如果我有一个带有的django模型
class Comment():
created = models.ForeignKey(User, on_delete=models.DO_NOTHING, related_name='comment_created')
如何根据"created"引用的用户设置Comment类的属性。
具体地说,我希望用惯用的方式引用(在注释实例中)创建注释的用户是否为"is_staff"。
IMO,以这种方式创建Comment模型类的方法可能会起作用:
class Comment(models.Model):
# some fields...
def created_user_is_staff(self):
return self.created.is_staff()
你可以在一些.py 中使用这种方法
# comment is an instance of the Comment class
if comment.created_user_is_staff():
# do something...
或在模板中
{% if comment.created_user_is_staff %}
render something...
{% endif %}
class Comment(models.Model):
created = models.ForeignKey(User, on_delete=models.DO_NOTHING, related_name='comment_created')
@property
def creator_is_staff(self):
return self.created.is_staff
my_user = User.objects.get() # Get some user
my_comment = Comment(created=my_user)
my_comment.creator_is_staff # Returns either True or False