我是 Django 的新手,我想在这里写一个博客是我的模型
from django.db import models
from django.contrib.auth.models import User
class UserProfile(models.Model):
name = models.OneToOneField(User)
def __unicode__(self):
return self.user.user_name
class Category(models.Model):
category = models.CharField(max_length=150)
def __str__(self):
return self.category
class Blog(models.Model):
title = models.CharField(max_length=150, default="No title")
body = models.TextField(default="None")
creation_date = models.DateTimeField(auto_now_add=True)
author = models.ForeignKey(UserProfile, default=1)
category = models.ForeignKey(Category, default="None")
def __str__(self):
return self.title
class Comment(models.Model):
comment = models.TextField(default="")
blog = models.ForeignKey(Blog)
但是当我运行命令时:
python manage.py migrate
我明白了
ValueError: invalid literal for int() with base 10: 'None'
我尝试删除旧的迁移文件并再次迁移,但出现同样的错误,我该怎么办?
最佳答案
代替 default="None"
,指定 null=True
以允许外键为 null:
category = models.ForeignKey(Category, null=True)
关于python - 以 10 为基数的 int() 模型 Django 无效文字 : 'None' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39187765/