Django应用程序中的循环检查对象是否已创建

2024-10-04 11:21:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我对django应用程序有问题:

class Module(models.Model):
    requirements = models.ManyToManyField("self", related_name='wym', symmetrical=False)
    status = ''

class EndedModules(models.Model):
    user = models.ForeignKey('auth.User')
    module = models.ForeignKey('Module')
    end_time = models.DateTimeField(blank=True, null=True)

鉴于:

^{pr2}$

但当我试图在模板中显示:

^{3}$

它不起作用。在

还有别的办法吗?在

我试着在模型中尝试这个,但我没有访问权限请求.用户在

谢谢!在


Tags: djangonameselftrue应用程序modelmodelsclass
1条回答
网友
1楼 · 发布于 2024-10-04 11:21:50

在第一个module循环上设置status属性,同时迭代模板(requirements.all)中完全不同的一组数据。在

假设您正在将modules传递给模板上下文,根据您的视图,您已经在外部module循环上设置了属性,而不是对内部element循环设置了属性。外循环对应于模板中的{{ module.status }}。在

{{ element.status }}正在迭代一个新创建的查询集,它将反映您在类定义中的内容,即status = ''

{% for module in modules %}
    {% for element in module.requirements.all %}
        {{ element.status }}
        <!  ^^^ this doesn't have a status value - only {{ module.status }}  >
    {% endfor %}
{% endfor %}

相关问题 更多 >