嘿,我是Django的新手,它试图在我的 models.py 中使用外键:
from django.db import models
from django import forms
from django.contrib.contenttypes.fields import GenericForeignKey
import datetime
# Create your models here.
CITIES = (
('item_1', 'Standort 01'),
('item_2', 'Standort 02'),
('item_3', 'Standort 03'),
('item_4', 'Standort 04'),
)
class Teacher(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
email = models.EmailField()
def __str__(self):
return "%s %s" % (self.first_name, self.last_name)
class Student(models.Model):
name = models.CharField(max_length=255)
standort = models.CharField(max_length=30, choices=CITIES, default='item_1')
teacher = models.ForeignKey(Teacher, on_delete=models.CASCADE)
start = models.DateField()
birthday = models.DateField()
def __str__(self):
return self.name
运行manage.py migrate
导致此错误:
line 947, in get_prep_value
return int(value)
ValueError: invalid literal for int() with base 10: '---'
试图弄清楚我的错误可能是什么后,我希望这里有人可以帮助我吗?
答案 0 :(得分:0)
通过下拉数据库修复了该问题。 我已经存储了一些导致此错误的对象。 清除这些数据后,manage.py migration可以正常工作。