Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django models Django模型关联、用户、配置文件和idea模型_Django Models_Django Templates - Fatal编程技术网

Django models Django模型关联、用户、配置文件和idea模型

Django models Django模型关联、用户、配置文件和idea模型,django-models,django-templates,Django Models,Django Templates,我有一个应用程序,它利用了“django注册”一个名为“idea”的定制模型和一个“userprofile” 现在Idea类如下所示 课堂理念(模型、模型): title=… user=models.ForeignKey(用户) 用户类是Django的Auth用户系统 用户配置文件如下所示 类用户配置文件(ImageModel): 用户=型号。外键(用户) image=models.ImageField(…) 现在让我们假设在我的frontpage中,我想显示所有想法,并让用户和他的“化身”显示

我有一个应用程序,它利用了“django注册”一个名为“idea”的定制模型和一个“userprofile”

现在Idea类如下所示

课堂理念(模型、模型):
title=…
user=models.ForeignKey(用户)

用户类是Django的Auth用户系统

用户配置文件如下所示

类用户配置文件(ImageModel):
用户=型号。外键(用户)
image=models.ImageField(…)

现在让我们假设在我的frontpage中,我想显示所有想法,并让用户和他的“化身”显示出来

如何关联所有三个模型而不必通过上下文进行渲染

{%用于idea%}
{{idea.user.get_full_name}刚刚发布了一个名为{{idea.title}的创意
{%endofr%}

现在我想在这里也显示用户配置文件图片

我能想出的最好办法是

{idea.user_set.all%中的userprofile为%1}
img src=“{{userprofile.image}}”
{%endfor%}


idea实例通过ForeignKey拥有一个用户。在用户实例上,有一个
get_profile
方法返回此用户的相关配置文件

所以你可以这样做(未经测试):

{%for ideas in ideas%}
{{idea.user.get_full_name}刚刚发布了一个名为{{idea.title}的创意
{%endfor%}

我认为从长远来看,最简单的方法是注册一个包含标记,这样您就可以在任何模型中重用它

{% 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 %}