Найти - Пользователи
Полная версия: Пара вопросов (Django ORM или SQLAlchemy)
Начало » Django » Пара вопросов (Django ORM или SQLAlchemy)
1
py
Добрый день!

Имеется:
class Parent():
	...
	
class Child():
    parent = models.ForeignKey(Parent)
    count = models.Charfield(choices=((1, 1), (2, 2), (3, 3)))
    created = models.DateTimeField()

1. Помогите выбрать те Parent, count последнего (по id или по created) Child которого == 1.

2. Необходимо добавить аттрибут (например last_child) у Parent, который бы без дополнительного запроса возвращал последний (по id или дате created) объект Child.

Вариант ниже, разумеется, не подходит:
@property
def last_child(self): return self.child_set.all().order_by('-id')[0]

Пригодится любое решение - на Django ORM или SQLAlchemy. Заранее спасибо!
adw0rd

self.child_set.all().order_by('-id')[0]

  • это делается через latest

self.child_set.latest()

А зачем вам две модели? Ведь обчно делается так:

class Something(models.Model):

   parent = models.ForeignKey('self', null=True, blank=True, related_name="childs")
py

adw0rd
А зачем вам две модели? Ведь обчно делается так:
К сожалению, такой вариант мне не подходит. Однако спасибо - про метод latest() даже не знал!
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