Найти - Пользователи
Полная версия: ForeignKey вопрос
Начало » Django » ForeignKey вопрос
1 2
SorrowFuck
Есть модель 2 которая расширяет модель 1.
Модель 2 связана с моделью 1 с помощью ForeignKey.
Если воспользоваться:
p.choice_set.get()
То возвращается строка из модели 2 в виде unicode которая связана с соответствующей строкой в модели 1.
В моем случае возвращаемая строка, которая изначально состоит не из одной колонки а из нескольких.
Как вернуть словарь который будет содержать в себе имена колонок строки как ключи и значение колонок на связанной строке как значение?
ad3w
SorrowFuck
Как вернуть словарь который будет содержать в себе имена колонок строки как ключи и значение колонок на связанной строке как значение?

Привести код моделей для начала.
FishHook
Не понятно ничего! колонки. ключи, строки, запутал напрочь
SorrowFuck
class Model1(models.Model):
 user = models.IntegerField()
class Model2(models.Model):
 user = models.ForeignKey(Model1, related_name='Model2ToModel1', unique=True)
 phone = models.CharField(max_length=10)
 address = models.CharField(max_length=30)
 def __unicode__(self):
  return u'%s, %s' % (self.phone, self.address)

m1 = Model1.objects.get(id=id)
m2 = m1.Model2ToModel1.get()

То есть строка user | phone | address в Model2
Связана с определенной строкой user в Model1

Как вернуть в m2 список где key это user, phone, address а value соответственно значения их.
Что бы это в последствии можно было передать к примеру в шаблон.
FishHook
m1 = Model1.objects.get(id=id)
m2 = Model2.objects.filter(user=Model2).values('user','phone','address')
SorrowFuck
Написал код для рабочих моделей:
mainProfile = User.objects.get(username='admin')
addProfile = UserProfile.objects.filter(user=mainProfile).values('age','avatar','citizenship','city','country','id','rating','user','verification')
В addProfile возвращается список с одним значением, которое является словарем.
Но почему-то когда я пробую пройтись циклом по словарю возвращается ошибка:
ValueError: too many values to unpack

FishHook
Это уже не проблема фреймворка, показывай как “пробую пройтись циклом по словарю”
SorrowFuck
Разобрался, забыл про методы словарей.
ad3w
SorrowFuck
То есть строка user | phone | address в Model2
Связана с определенной строкой user в Model1
Никак она не связана с строкой.

SorrowFuck
Отношение многие к одному это не связь?
Поясните тогда.
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