首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Django模板中显示ManyToMany字段

在Django模板中显示ManyToMany字段
EN

Stack Overflow用户
提问于 2014-01-21 06:47:36
回答 1查看 598关注 0票数 0

型号:

代码语言:javascript
运行
复制
class Specialization(models.Model):
    SPECIALIZATION_TYPE = (
    ('S','Specialty'),
    ('Ss','Sub-specialty')
    )
    specialization_desc = models.CharField('Specialization',max_length=50,unique=True)
    specialization_type = models.CharField(max_length=2, choices=SPECIALIZATION_TYPE)
    active = models.BooleanField('Active',default=True)

    def __unicode__(self):
    return self.specialization_desc

class Person(models.Model):
    GENDER = (
    ('M','Male'),
    ('F','Female'),
    )
    first_name = models.CharField("First Name", max_length=50)
    last_name = models.CharField("Last Name",max_length=50)
    middle_name = models.CharField("Middle Name", max_length=50, blank=True)
    specialization_id = models.ManyToManyField(Specialization, 

模板:

代码语言:javascript
运行
复制
{% for per in person_list%}
<tr>
<td>{{ per }}</td>
{% for spec in per.specialization_id.all %}
    <td>{{ spec }}</td>
{% endfor %}
</tr>
{% endfor %}

查看:

代码语言:javascript
运行
复制
p = Person.objects.all()
return p

我想看看这样的桌子:

代码语言:javascript
运行
复制
FullName | Specialization               |
My Name  | Programming, Web Development |

我要去拿这个

代码语言:javascript
运行
复制
FullName | Specialization |
My Name  | Programming    | Web Development
  • 在变量中存储规范是不可能的,仅凭它就可以解决我的问题。
  • 从视图中将数据存储在字典中是不能调用的。

对我来说似乎是死胡同。想法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-21 07:40:44

我不明白你的问题。

您是否在模板中获得了专门化,只需要以不同的方式显示它们?

代码语言:javascript
运行
复制
{% for person in person_list%}
    <tr>
        <td>{{ person }}</td>
        <td>{{ person.specialization_id.all|join:", " }}</td>
    </tr>
{% endfor %}

此外,不要将外键和与_id的多对多关系作为后缀.

对于外键,Django已经为您做了,所以在DB中,您将使用field_id_id

对于多到多的对象,创建了一个单独的表,而在DB中的任何地方都没有创建specialization_id。使用更详细的名称,比如specializations

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21251074

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档