offline
Сен. 5, 2007 20:16:12
Хотел сделать простые новости, с заголовком, контентом и автором. Но автора брать из отдельной таблицы юзеров. Создал вот такие модели:
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 }}. Как это можно осуществить?
offline
Сен. 5, 2007 22:36:18
Гы, действительно выводит то что надо.. а я думал ID выведет..
Насчёт стандартных юзеров я пока ещё до этого не дошёл.. Только начал изучать django.
Mkdir
Сен. 6, 2007 08:25:12
offline
Гы, действительно выводит то что надо.. а я думал ID выведет..
;)
offline
Сен. 6, 2007 14:25:47
Ну что бы тема не была совсем бессмысленной, изменим наш ForeignKey на ManyToManyField. Оттуда то точно {[ row.author }} не выводит ничего.
Как достать всех авторов которые относятся к новости?
Александр Кошелев
Сен. 6, 2007 15:34:44
{% for author in news_entry.authors.all %}
{{author}}
{% endfor %}
authors - ManyToManyField
не зыбывай ситать документацию. она не зря написана.
http://www.djangoproject.com/documentation/models/many_to_many/
offline
Сен. 6, 2007 16:22:41
lorien, я пару раз перечитывал, проблема в том что там написано для интерактивного шела, а как это в темплейте отобразить - нету.. Для тех кто уже долго польуется django это наверное не проблема, но я пока не могу сам додуматься как исходя из того что в шеле сделать такое же в темплейте, но попробую сегодня ещё разок прочитать и сделать все примеры.. Ждите новых вопросов ))
Daevaorn
Спасибо, помогло.
crash
Сен. 7, 2007 22:09:59
В большинстве случаев доступ к обьектам в шаблоне ничем не отличается от шелла или чистого питон-кода.