2011-01-14 5 views
0
class Content(models.Model): 
    author = models.ForeignKey('auth.User') 
    stamp = models.CharField(max_length=50) 

class Comments(models.Model): 
    content = models.ForeignKey(Content) 
    message = models.TextField() 

現在ログインしているユーザーが作成したコンテンツのコメントをすべて取得します。 しかし、これは動作しません:Djangoでどのようにこのクエリを作成しますか?

Comments.objects.filter(content.author = request.user) 

答えて

6

使用field lookups

Comments.objects.filter(content__author=request.user) 

DjangoはあなたのためのJOINのSQLの世話をして、検索中関係を「追跡」するための強力かつ直感的な方法を提供しています自動的に、舞台裏で。リレーションシップを広げるには、必要なフィールドに到達するまで、モデル間で関連するフィールドのフィールド名をダブルアンダースコアで区切って使用します。

関連する問題