你能告诉我如何在模板中显示来自关联模型的信息吗?
楷模
class Cars(models.Model):
brand = models.CharField(max_length=30)
class Engine(models.Model):
engine = models.CharField(max_length=30)
cars = models.ManyToManyField(Cars, verbose_name="cars", related_name='cars_rn')
意见
class EngineView(DetailView):
model = Engine
template_name = 'cars/engine_detail.html'
slug_field = 'engine_url'
模板
{% block content %}
{{ engine.engine }} <! -- Работает -->
{% for car in engine.cars_rn.all %}
{{ car.brand }} <! -- Не работает -->
{% endfor %}
{% endblock content %}
您不了解related_name 逻辑。在related_name 中,您指定“回溯”的名称,即从 Cars 到 Engine。所以你的 Engine 类应该是这样的:
现在你可以这样写:
它会起作用。
要从 Engine 中选择所有 Cars,您需要这样编写: