我可能是一个noob问题,但是......有没有办法在models.py中使用请求?
类似的东西:
class MyModel (models.Model):
User = models.ForeignKey(default=request.user)
...other fields...
或者也许使用post_init方法来完成这项工作。
感谢。
答案 0 :(得分:3)
你给它的具体例子在Django中没用。 请求确实有一个上下文(发生HTTP的上下文),因此当您实例化MyModel
时,它可能会也可能不可用。
你可以在你的观点中做到:
def index(request):
myModel = MyModel(request.user)
在你的模特中:
class MyModel (models.Model):
user = models.ForeignKey(User)
def __init__(self, pUserName):
self.user = User.objects.get(userName=pUserName)