У меня есть эти модели:
class AgencyPosition(models.Model):
Agency=models.ForeignKey(Agency)
Users=models.ManyToManyField(User)
PositionTypeCode=models.ForeignKey(PositionType)
PhoneNumber=models.CharField(max_length=50)
Email=models.CharField(max_length=50)
StatusTypeCode=models.ForeignKey(StatusType)
class News(models.Model):
Category=models.ForeignKey(Category)
Title=models.CharField(max_length=100)
Description=models.TextField()
created_by=models.ForeignKey(User,editable=False)
ActionDate=models.DateTimeField(auto_now=True,editable=False)
Я хочу, чтобы когда пользователь вводил название агентства, я выбирал топ-5 новостей, принадлежащих конкретному агентству. В модели новостей есть поле create_by field.created_by, это пользовательвставьте это News.in AgencyPosition. Я определяю, к какому агенту принадлежит пользователь.
Я делаю это в views.py:
agn=Agency.objects.filter(Name=key)
AgencyPositionList=AgencyPosition.objects.filter(Agency=agn)
, теперь у меня есть все пользователи из конкретного агентства.выберите News, что их поле Created_by предназначено для этого конкретного агентства. Например, псевдокод:
select top 5 * from News where created_by in(AgencyPositionList.Users)
Как я могу это сделать?