链接表的Django视图
我的模型中有三个表:链接表的Django视图,django,django-models,django-views,Django,Django Models,Django Views,我的模型中有三个表: class Recipe(models.Model): title = models.CharField(max_length=200) excerpt = models.TextField(null=True) category = models.CharField(max_length=10, default='FoodGroup') cookTime = models.CharField(max_length=20, default='
class Recipe(models.Model):
title = models.CharField(max_length=200)
excerpt = models.TextField(null=True)
category = models.CharField(max_length=10, default='FoodGroup')
cookTime = models.CharField(max_length=20, default='15Min')
prepTime = models.CharField(max_length=20, default='5Min')
process = models.TextField(null=True)
slug = models.SlugField(max_length=100, unique=True)
updated = models.DateTimeField(auto_now=True)
published = models.DateTimeField(default=timezone.now)
def get_absolute_url(self):
return reverse('recipe:single', args=[self.slug])
class Meta:
ordering = ['-published']
def __str__(self):
return self.title
class Ingredient(models.Model):
IngName = models.CharField(max_length=30)
IngType = models.CharField(max_length=20, null=True)
def __str__(self):
return self.IngName
class RecipeIngredients(models.Model):
ingredient = models.ForeignKey(Ingredient, on_delete=models.CASCADE)
recipe = models.ForeignKey(Core, on_delete=models.CASCADE)
视图如下所示:
class RecipeView(ListView):
model = RecipeIngredients
template_name = 'core/recipes.html'
context_object_name = 'recipe'
然后,我尝试使用for循环查看此数据:
{% for recipe in recipe %}
{{ recipe.title }}
{% endfor%}
但是用这种方法什么都得不到,我试过看文档,但我不确定我是不是用最好的方法做的?我查看了文档的多对多部分,但我认为链接表可能更适合我的场景
为其他有类似问题的人编辑:
使用Django的多人模型函数更合适:
- 答案是正确的,物体的名称选择不当
{% for diff_name in recipe %}
{{ diff_name.title }}
{% endfor%}
谢谢我改变了这一点,也意识到在我的情况下,最好在我的模型中使用多个字段,并设法使其工作。