2011-09-09 3 views
1

私は質問があるかもしれませんが、... models.pyのリクエストを使用する方法はありますか?以下のようなdjangoのモデルでリクエスト

何か:

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)