2010-08-07 35 views
0

我有一個應用程序,使得使用的「Django的登記」命名的「觀念」,也是一個「用戶配置文件」Django的模型關聯,用戶配置文件和理念模型

如今的想法類看起來就像一個定製模式如下

類思想(models.Model):
標題= ...
用戶= models.ForeignKey(用戶)

用戶類是Django的Auth用戶SY幹。

UserProfile看起來如下。

類用戶配置(ImageModel):
用戶= models.ForeignKey(用戶)
圖像= models.ImageField(.....)

現在讓我在頭版說,我想顯示所有Idea,並讓用戶和他的「頭像」顯示。

如何關聯所有三個模型,而不必通過上下文呈現它。

{%,爲思想觀念%}
{{idea.user.get_full_name}}剛剛發佈了一個想法與{{idea.title}}
{%endofr%}

名稱

現在我想在這裏也顯示用戶個人資料圖片。

最佳我可以想出是

{%爲USERPROFILE在idea.user_set.all%}
IMG SRC = 「{{userprofile.image}}」
{%ENDFOR%}

回答

0

我認爲從長遠來看,最簡單的方法就是註冊一個包含標籤,所以你可以與任何型號的重用此。

0

想法實例有一個用戶,通過ForeignKey。在用戶實例上,您有一個返回此用戶的相關配置文件的方法get_profile

所以你可以做這樣的事情(未經測試):

{% for idea in ideas %} 
    {{ idea.user.get_full_name }} <img src="{{ idea.user.get_profile.image }}"/> just posted an idea with the name {{ idea.title }} 
{% endfor %}