Django Поиск в реляционной базе данных - PullRequest
2 голосов
/ 13 июня 2009

Я не могу понять, как сделать отношения.

У меня есть модель товаров и модель магазинов. Товар имеет внешний ключ от магазинов.

Итак, я хотел бы получить название продукта и название магазина в одном и том же поиске.

Так как модель продукции:

class Products(models.Model):
  PrName = models.CharField(max_length=255)
  PrCompany =  models.ForeignKey(Companies)

А модель фирмы:

class Companies(models.Model):
  ComName = models.CharField(max_length=255)

Как заставить django вернуть ComName (из модели компании), когда я сделаю:

Prs = Products.objects.filter(PrName__icontains=ss)

1 Ответ

7 голосов
/ 13 июня 2009

Предполагая, что вы получите результаты:

Prs[0].PrCompany.ComName # Company name of the first result

Если вы хотите, чтобы все названия компаний были в списке:

company_names = [product.PrCompany.ComName for product in Prs]
...