UserProfile有一对一对“用户”和多对一到Place。
class UserProfile( models.Model ) :
user = models.OneToOneField( User )
place = models.ForeignKey( Place, null = True, blank = True )在我对Place的详细视图中,我想列出Place的所有居民。换句话说,我想列出所有的User,其UserProfile具有指定的Place。
在我的模板中,我尝试了
{% for resident in place.user_profile_set.user_set.all %}但那不管用。我想我从根本上忽略了Django关于“倒退一段关系”的概念
发布于 2012-03-30 11:04:33
你错过了两件事是的。
首先,从Place到UserProfile的反向关系是userprofile_set,而不是user_profile_set。
第二个问题是,从那里到User根本不是一个反向关系:它是向前的,因为FK是在UserProfile模型上定义的。因此,从UserProfile到User,您只需做.user -它是一个单一的元素,而不是查询集。
因此,正如pastylegs所说,您在place.userprofile_set.all中迭代配置文件并执行profile.user。
发布于 2012-03-30 10:34:46
下面这样的东西呢?
{% for resident in place.userprofile_set.all %}
{{ resident.user }}
{% endfor %}https://stackoverflow.com/questions/9941276
复制相似问题