Форум сайта python.su
Привет.
Есть модель:
class Food(models.Model): name = models.CharField() class Hotel(models.Model): name = models.CharField() class MyModel(models.Model): food = models.ManyToManyField(Food) class People(models.Model): hotel = models.ForeignKey(Hotel) mymodel = models.ForeignKey(MyModel)
all = get_list_or_404( People.objects.select_related('hotel', 'mymodel').prefetch_related('mymodel__food')
for index, item in enumerate(all): if item.hotel.name == моё_название_отеля: selected_hotel = item
all.get('моё_название_отеля',None) - но так не работает.
Отредактировано MikaMika (Март 19, 2013 13:06:58)
Офлайн
all_people=People.objects.select_related('hotel', 'mymodel').prefetch_related('mymodel__food') in_hotel=all_people.filter(hotel__name=u'Украина')
Офлайн
FishHook, спасибо.
in_hotel = all_people.object.get(hotel__name='крутой_отель')
Офлайн
Я хочу узнать, можно получить нужный объект (я знаю, что он будет один) из queryset'а - “all_people”?
Или результат всегда будет queryset'ом, и можно пользоваться только .filter() и т.д.
Офлайн
MikaMika
Я хочу узнать, можно получить нужный объект (я знаю, что он будет один) из queryset'а - “all_people”?
obj = all_people[0]
Отредактировано inoks (Март 19, 2013 19:21:03)
Офлайн