Форум сайта python.su
Хотел сделать простые новости, с заголовком, контентом и автором. Но автора брать из отдельной таблицы юзеров. Создал вот такие модели:
class Users(models.Model):
name = models.CharField(maxlength=30)
def __str__(self):
return self.name
class News(models.Model):
title = models.CharField(maxlength=30)
content = models.TextField()
author = models.ForeignKey('Users')
def __str__(self):
return self.title
В админке всё прекрасно работает. создаю новость, выбираю автора, всё красиво.. Но как теперь в шаблоне вывести имя автора новости, а не его id?
Вот код вида
def my_News(request):
news = News.objects.all()
return render_to_response('news.html',{'news':news})
{% for row in news %}
{{ row.title }} {{ row.content }}
{% endfor %}
Вот тут хотелось бы что то типа {{ row.author }}. Как это можно осуществить?
Офлайн
Гы, действительно выводит то что надо.. а я думал ID выведет..
Насчёт стандартных юзеров я пока ещё до этого не дошёл.. Только начал изучать django.
Офлайн
offline;)
Гы, действительно выводит то что надо.. а я думал ID выведет..
Офлайн
Ну что бы тема не была совсем бессмысленной, изменим наш ForeignKey на ManyToManyField. Оттуда то точно {[ row.author }} не выводит ничего.
Как достать всех авторов которые относятся к новости?
Офлайн
{% for author in news_entry.authors.all %}
{{author}}
{% endfor %}
Офлайн
lorien, я пару раз перечитывал, проблема в том что там написано для интерактивного шела, а как это в темплейте отобразить - нету.. Для тех кто уже долго польуется django это наверное не проблема, но я пока не могу сам додуматься как исходя из того что в шеле сделать такое же в темплейте, но попробую сегодня ещё разок прочитать и сделать все примеры.. Ждите новых вопросов ))
Daevaorn
Спасибо, помогло.
Офлайн
В большинстве случаев доступ к обьектам в шаблоне ничем не отличается от шелла или чистого питон-кода.
Офлайн