Django设计问题
我在 django 中有一个具有布尔私有/公共属性的模型:
class TestModel(models.Model):
name = models.CharField()
is_public = models.BooleanField(default=False)
我希望每次在应用程序中查询该模型时,它只向普通用户返回公共实例,向超级用户返回所有可用实例。
我需要如何以及在哪里实现此类功能?
I have a model in django that have a boolean private/public attribute:
class TestModel(models.Model):
name = models.CharField()
is_public = models.BooleanField(default=False)
I want that every-time I query this model in an application it returns only public instances to the common user and all available instances to the super-user.
How and where I need to implement such functionality?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以在视图层实现该逻辑,可能使用 自定义管理器。
您的经理看起来像这样:
您的模型看起来像这样:
然后您可以编写一个选择正确经理的函数:
然后在您看来您可以使用:
You implement that logic at the view layer, probably with a custom manager.
Your manager would look something like this:
Your model would look something like:
You could then write a function that picked the right manager:
Then in your view you could use: