2010-12-07 3 views
1
私は Infoという名前のクラスに OneToOneFieldを含むモデル UserProfileを持っています:

Django:テンプレートの1対1フィールドへのアクセス

{{user.get_profile}} 

Infoにアクセスするにはどうすればいいですか?私は

{{user.get_profile.info.photo.url}} 

を成功させようとしました。

+0

AUTH_PROFILE_MODULEの設定をしましたか? –

+0

@David Miller:はい、いい話です。 – Mermoz

+0

http://stackoverflow.com/questions/6676134/accessing-django-onetoonefield-in-templates –

答えて

6

これはできません。

user.get_profile() 

は方法であり、

{{user.get_profile}} 

はなく、あなたが{{user.get_profile.attr1}}

のようなプロファイルのより多くの属性にアクセスしようとすると、回避する方法は、プロファイルオブジェクトを送信することであるとしてアクセスされた場合、起動されますビューから。そして、あなたがそれを多くの視点で持っていたいならば、それをTemplateContextProcessorにするべきです。

また、described earlierのようにget_profileと同じ機能を果たす@propertyという属性プロファイルを持つユーザーモデルを拡張する別の方法もあります。

+0

正しい答えと説明はありませんか?最初の私のためのStackoverflow。 :( –

+0

私はこのdownvoteの不正について同意する – Mermoz

関連する問題