Я пытаюсь построить запрос, который принимает в настоящее время зарегистрированных пользователей nextzips, который является списком из 5 почтовых кодов, а затем фильтрует все товары для продажи, которые соответствуют этим 5 почтовым индексам.Как создать запрос Django, который фильтрует каждый элемент списка?
models.py
class MyProfile(UserenaBaseProfile):
user = models.OneToOneField(User,
unique=True,
verbose_name=_('user'),
related_name='my_profile')
streetaddress=models.CharField(null=True, blank=True, max_length=30)
city = models.CharField(null=True, blank=True, max_length=20)
state = models.CharField(null=True, blank=True, max_length=20)
zipcode = models.IntegerField(_('zipcode'),
max_length=5, null=True, blank=True)
nearestzips = models.Charfield(null=True, blank=True, max_length=80)
views.py
class Entry(models.Model):
headline= models.CharField(max_length=200,)
body_text = models.TextField()
author=models.ForeignKey(settings.AUTH_USER_MODEL, related_name='entryauthors')
pub_date=models.DateTimeField(auto_now_add=True)
zipcode =models.IntegerField(null=True, max_length=10)
печати nearestzips из консоли
print testprofile.nearestzips
>>>[<PostalCode=97202>, <PostalCode=97201>, <PostalCode=97215>, <PostalCode=97239>, <PostalCode=97214>]
И, наконец, вот запрос я пытаюсь построить.
latest_entries = Entry.objects.filter(zipcode="user.nearestzips")
Мой вопрос в том, что ближайший список - это список, как я могу фильтровать через 5 элементов этого списка? Могу ли я просто добавить [0: 4] после того, как «nearestzipcodes» или я должен сделать что-то вроде этого:
latest_entries = Entry.objects.filter(zipcode="user.nearestzips[0]").filter(zipcode="user.nearestzips[1]").filter(zipcode="user.nearestzips[3]"), etc.
Любая помощь будет apprecitaed, спасибо.
Это дает мне TypeError: не может использовать многопрофильное geovaluesqueryset в качестве значения fiilter. – stephan
Я не знаю, вызвала ли это причину проблемы, но с помощью этой строки была создана следующая информация: ближайшее zips = PostalCode.objects.distance (PostalCode.objects.get (code = 'user.zipcode'). Location) .order_by ('distance') [: 9] – stephan
Можно ли использовать __in с django 1.6? – stephan