2016-10-30 18 views
-2

プロファイルモデル(住居写真、情報など)で私のユーザーモデルを拡張しました。プロファイルに関係を定義することによって、次のように私はこれを行っている:テンプレート内のユーザー '拡張モデル'へのアクセス

user = models.OneToOneField(User, related_name='profile') 

ことが可能とされるたびに(文脈によって)ビューから、それを通過することなく、私のテンプレートで直接これを引っ張って?以下のような何か:

{{ request.user.profile.picture }} 

(上記の私のために動作しません)

私は基本テンプレートでこれを使用するように、私はすべてのビューでそれを渡す必要はありません。

+2

「動作しない」とはどういう意味ですか?詳しく教えてください... – Selcuk

答えて

0

DjangoはデフォルトでテンプレートコンテキストにUserオブジェクトを配置します。つまり、{{ user }}のようなユーザーにアクセスできます。テンプレートを使用すると、関連するオブジェクトにアクセスできるため、ユーザーのプロフィール画像を取得するには、{{ user.profile.picture }}を実行します。何も返されない場合は、ユーザーにプロファイルがあり、プロフィールの画像フィールドが空でないことを確認してください。

関連する問題