Найти - Пользователи
Полная версия: Как вернуть один объект а не кверисет ?
Начало » Django » Как вернуть один объект а не кверисет ?
1
alexrussia
Здравствуйте!!!
У меня такой вопрос :
Как вернуть один объект класса Newclass а не целый кверисет?
то есть в шаблон должен выводится один объект из класса Newclass соотвествующий урл ( или более точно объект должен соответствовать self.link возвращаемой get_absolute_url)

код - http://paste.in.ua/333/
regall
1. Такая конструкция возвращает отдельный объект, а не queryset в отличии от фильтра:
Model.objects.get(<условие>)
Если по <условие> выбрано больше одного объекта или объектов не найдено - вывалятся соответствующие исключения.

2. Насчет URL, если я правильно понял вас, то помочь должен декоратор @permalink:
http://docs.djangoproject.com/en/1.1/ref/models/instances/#the-permalink-decorator
alexrussia
regall
1. Такая конструкция возвращает отдельный объект, а не queryset в отличии от фильтра:
Код:

Model.objects.get(<условие>)

Если по <условие> выбрано больше одного объекта или объектов не найдено - вывалятся соответствующие исключения.

2. Насчет URL, если я правильно понял вас, то помочь должен декоратор @permalink:
http://docs.djangoproject.com/en/1.1/re … -decorator

Отредактированно regall (Сегодня 15:58:05)
не точно поняли мне нужно:
в классе Newclass есть функция:
@models.permalink
def get_absolute_url(self):
return ('newpage',(),{'page':self.link})
возращает self.link
тоесть получается урл www.сайт.ru/link/
Мне нужно чтоб для этого урл в шаблон выводилось одно значение name, одно link , одно text (объявленные в классе Newclass)
я понимаю что с помощью Model.objects.get можно получить объект, в данном случае именно для меня условие труднным является:
Предполагая что должно быть Newclass.objects.get(link= ) а вот как правильно записать, то есть присвоить значение возращаемое get_absolute_url не знаю :(
alexrussia
все решил путем добавления одной строки в модуль views.py в функцию render:
new=get_object_or_404(Newclass,link=page) , у page убрать none , заменить Newclass.object.all() на new
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB