Я новичок как django и sqlite3. У меня есть модель (человек), с внешним ключом к (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
Я пытаюсь добавить записи к человеку, используя корпус 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)))
, но это возвращает ошибку: ValuctionError: не может назначить «appellant»: «Person.Pers_Type» должен быть экземпляром «Person_Type».
Строка «appellant» уже хранится как одно из значений в таблице «Person_Type.pers_type». Что мне нужно изменить, чтобы сделать это, чтобы ссылаться на поле Pers_Type?
Счастливы предоставить более подробную информацию, если это необходимо. Большое спасибо за ваше время.