Здравствуйте, я учусь Django и не могу передать данные из модели для просмотра. Я пытаюсь создать простой блог для изучения, но всегда, когда я отображаю представление, переменная присутствует, если я выполняю условие if, но когда я пытаюсь получить доступ к этой переменной - она пишет. Вы забыли зарегистрировать или загрузить эту ошибку тега? ..
html:
{% if posts %}
{% posts %}
{% else %}
without posts
{% endif %}
models.py:
STATUS = (
(0,"Draft"),
(1,"Publish")
)
class Category(models.Model):
name = models.CharField(max_length=200, unique=True)
slug = models.SlugField(max_length=200, unique=True)
active = models.BooleanField(default=False)
img = models.ImageField()
description = models.TextField()
class Meta:
ordering = ['-name']
def __str__(self):
return self.name
class Post(models.Model):
title = models.CharField(max_length=200, unique=True)
slug = models.SlugField(max_length=200, unique=True)
author = models.ForeignKey(User, on_delete= models.CASCADE,related_name='blog_posts')
wide_img = models.ImageField()
hide_img = models.ImageField()
updated_on = models.DateTimeField(auto_now= True)
content = models.TextField()
created_on = models.DateTimeField(auto_now_add=True)
status = models.IntegerField(choices=STATUS, default=0)
category = models.ForeignKey(Category, on_delete= models.CASCADE)
class Meta:
ordering = ['-created_on']
def __str__(self):
return self.title
views.py
from blog.models import Post
def index(request):
posts = Post.objects.filter(status=1).order_by('?')[:3]
context = {
"posts": "jaj",
}
template_name="index.html"
return render(request, template_name, context)