Я новичок как в Django, так и в SQlite3.У меня есть модель (Person) с внешним ключом (Person_Type):
class Person(models.Model):
name = models.CharField(max_length=500)
pers_type = models.ForeignKey(Person_Type)
def __unicode__(self):
return self.name
class Person_Type(models.Model):
pers_type = models.CharField(max_length=40)
def __unicode__(self):
return self.pers_type
Я пытаюсь добавить записи в Person с помощью оболочки python manage.py.
Пока что, Я пытался:
import sqlite3
from trials.models import *
conn = sqlite3.connect('privy.db')
print Person #this returns <class 'privy.trials.models.Person'>
cur = conn.cursor()
fields = ['name', 'pers_type']
row = ['Adam', 'Appellant']
Person.objects.create(**dict(zip(fields, row)))
Но это возвращает ошибку: ValueError: Невозможно назначить «Appellant»: «Person.pers_type» должен быть экземпляр «Person_Type».
Строка "Appellant" уже сохраняется как одно из значений в таблице "Person_Type.pers_type".Что мне нужно изменить, чтобы получить ссылку на поле pers_type?
Рад предоставить больше подробностей, если это необходимо.Большое спасибо за ваше время.