Я новичок в программировании и столкнулся с проблемой, которую не могу понять. При открытии страницы новости по ссылке, выдается следующая ошибка:
entries = el.en_set.order_by('-date_added')
AttributeError: 'function' object has no attribute 'en_set'
. Я понимаю проблему, но не понимаю как ее решить Запутался в собственном коде.
models.py
class News(models.Model):
title = models.CharField(max_length=250)
slug = models.SlugField(max_length=50,unique=True)
author = models.ForeignKey(User,on_delete=models.CASCADE,
related_name='news_posts', null=True, blank=True)
anons = models.CharField(max_length=350)
body = RichTextUploadingField(null=True, blank=True)
date_added = models.DateTimeField(auto_now_add=True)
# Возврат понятного отображения заголовка в панель администрирования
def __str__(self):
return self.title
class Meta:
verbose_name = u"Новость"
verbose_name_plural = u"Новости"
urls.py
path(r'new/<el_id>', views.el, name='el')
views.py
def el(request, el_id): #Вывод отдельной новости
article = News.objects.get(id=el_id)
entries = el.en_set.order_by('-date_added')
context = {'el':el, 'entries': entries}
return render(request, 'prosvet_logs/article.html', context)
article.html-генерируемая страница
{% extends "prosvet_logs/base.html" %}
{% block content %}
<div class="article">
<h2>{{ el }}</h2>
{% if new %}
{% for el in new %}
<p>{{ new.date_added|date:'M d, Y H:i' }}</p>
<p>{{ new.body|linebreaks }}</p>
{% endfor %}
{% else %}
<p>Новостей нет</p>
{% endif %}
</div>
{% endblock content}