数据迁移后,我想为作者字段分配设置。AUTH_USER_MODELuser.username。
@property
def author(self):
return self.user.username() #'line-17'
获取:
/ posts /(主页)上的TypeError 'str'对象不可调用
models.py in author,第17行
答案 0 :(得分:1)
这应该可以正常工作:
@property
def author(self):
return self.user.username
用户名是一个字符串,不应像example_method()
这样的方法来调用。
答案 1 :(得分:0)
由于username
是类中的字符串,因此您不必使用括号:-
@property
def author(self):
return self.user.username #'line-17'
如果username
是类中的一个函数,则必须使用括号:-
@property
def author(self):
return self.user.username() # If username is a function.
或者您可以通过callable
检查用户名是否起作用:-
callable(self.user.username)
它将返回True
或False
,True
表示username
是一个函数。