Отношения "многие ко многим" - возврат "main.ModelName.None"
Я пытаюсь вернуть несколько значений из других моделей через ManyToManyField
. В шаблоне возвращается main.ModelName.None
.
Данные видны через панель администратора.
В результате я предполагаю, что проблема связана с представлениями или с тем, как я отображаю данные в HTML.
Я нашел несколько сообщений на эту тему с той же проблемой, но похоже, что они имели дело с сообщением об ошибке, которое я не получаю.
В моем случае я просто не могу отобразить данные.
Вот код: models.py
class Project(models.Model):
name = models.CharField(verbose_name="Name",max_length=100, blank=True)
def __str__(self):
return str(self.name) if self.name else ''
class Product(models.Model):
project = models.ManyToManyField(Project, blank=True, related_name="available_products")
class Meta:
db_table='Product'
def __str__(self):
return str(self.name)
views.py
def show_product(request, product_id):
products = Product.objects.get(pk=product_id)
return render(request, 'main/show_product.html',{'products':products})
шаблон
<h6>Project Name</h6>
{{ products.project }}
Возвращается main.Project.None
Использовать {{ products.project.all }}
Ссылка: https://docs.djangoproject.com/en/4.1/topics/db/examples/many_to_many/