У меня есть простая программа адресной книги, которую я хочу сделать доступной для поиска. Модель будет выглядеть примерно так:django простой подход к многопользовательскому поиску
class Address(models.Model):
address1 = models.CharField("Address Line 1", max_length=128)
address2 = models.CharField("Address Line 2", max_length=128)
city = models.CharField("City", max_length=128)
state = models.CharField("State", max_length=24)
zipCode = models.CharField("Zip Code", max_length=24)
def __unicode__(self):
return "%s %s, %s, %s, %s" % (self.address1, self.address2, self.city, self.state, self.zipCode)
class Entry(models.Model):
name = models.CharField("Name of Business", max_length=128)
createdBy = models.ForeignKey(User)
address = models.ForeignKey(Address, unique=True)
def __unicode__(self):
return "%s - %s, %s" % (self.name, self.address.city, self.address.state)
Я хочу ищущий быть достаточно свободной, как: Bank of America Los Angeles 91345
. Кажется, я хочу, чтобы поле, содержащее все эти элементы, было в одном, которое я мог бы искать, но это также кажется излишним. Я надеялся, что я мог бы добавить метод в модель ввода, как это:
def _getSearchText(self):
return "%s %s %s" % (self.name, self.address, self.mascot)
searchText = property(_getSearchText)
... и искать, что в поле, но я полагаю, что это выдавать желаемое за действительное ... Как я должен подойти к этому с помощью основной Django и SqLite (это учебное упражнение).
спасибо !!