Python django:两个不同类的字段一个循环?
对不起,我想我的错误很容易纠正,但由于时间关系,我无法接受。更新的工作代码: 视图: 模板:Python django:两个不同类的字段一个循环?,python,django,views,Python,Django,Views,对不起,我想我的错误很容易纠正,但由于时间关系,我无法接受。更新的工作代码: 视图: 模板: {% for post in posts %} {{ post.list.tag }} {{ post.width }} {% endfor %} 型号: class TodoList(models.Model): tag = ... class TodoItem(models.Model): width = ... list = models.ForeignKey
{% for post in posts %}
{{ post.list.tag }}
{{ post.width }}
{% endfor %}
型号:
class TodoList(models.Model):
tag = ...
class TodoItem(models.Model):
width = ...
list = models.ForeignKey(TodoList, related_name="list_items")
{{post.list.tag}和list=models.ForeignKey成功了
一切正常,但由于使用TodoItems,我可以动态添加表单,因此大多数情况下,我在TodoItems上的字段比在TodoList上的字段多。
所以我的问题是,当我像上面那样渲染循环时,我有以下输出:
标记:宽度,标记:宽度,标记:宽度,标记:宽度,标记:宽度
我需要的是通过TodoList而不是TodoItem进行循环,在这里我希望得到以下输出:
标签:宽度,宽度,宽度|标签:宽度,宽度
宽度的数量是动态添加的,但当我添加例如4倍宽度时,应该只有一个相关标记
我在这里试了很多,比如附近的一个例子
视图:TodoList而不是TodoItem
但随后在模板TodoList输出失败。我不想让你尝试我的模板。
谁能帮我一下吗?你不需要改变你的观点。我想,我希望你们有一对多的外国钥匙从清单到项目 在这种情况下,只需在模板中执行以下操作:
{% for post in posts %}
{{ post.list.tag }}
{{ post.width }}
{% endfor %}
您的模型将如下所示:
class TodoList(models.Model):
name = ...
tag = ...
class TodoItem(models.Model):
# ...
list = models.ForeignKey(TodoList, related_name="list_items")
哇,谢谢工作!现在还有其他问题,但那是另一回事。泰索much@ManuelStrasser不客气;
{% for post in posts %}
{{ post.list.tag }}
{{ post.width }}
{% endfor %}
class TodoList(models.Model):
name = ...
tag = ...
class TodoItem(models.Model):
# ...
list = models.ForeignKey(TodoList, related_name="list_items")