python3 django2.0 在生成数据库表时报错: TypeError: __init__() missing 1 required positional argument: 'o(代
Posted 依然范儿特西
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3 django2.0 在生成数据库表时报错: TypeError: __init__() missing 1 required positional argument: 'o(代相关的知识,希望对你有一定的参考价值。
python: 3.6.4
django: 2.0
models.py 代码如下
# coding: utf-8 from django.db import models from django.contrib.auth.models import User # Create your models here. class Category(models.Model): name = models.CharField(max_length=100) class Tag(models.Model): name = models.CharField(max_length=100) class Post(models.Model): title = models.CharField(max_length=70) body = models.TextField() created_time = models.DateTimeField() modified_time = models.DateTimeField() excerpt = models.CharField(max_length=200, blank=True) category = models.ForeignKey(Category,on_delete=models.CASCADE) tags = models.ManyToManyField(Tag, blank=True) author = models.ForeignKey(User,on_delete=models.CASCADE)
错误信息:
解决办法:
外键值的后面加上 on_delete=models.CASCADE
category = models.ForeignKey(Category)
author = models.ForeignKey(User)
改为
category = models.ForeignKey(Category,on_delete=models.CASCADE)
author = models.ForeignKey(User,on_delete=models.CASCADE)
再次执行 ,成功
以上是关于python3 django2.0 在生成数据库表时报错: TypeError: __init__() missing 1 required positional argument: 'o(代的主要内容,如果未能解决你的问题,请参考以下文章
Django:Python3.6.2+Django2.0配置MySQL
win10,python3.6,django2.0.3,项目基本命令
Scrapy1.4爬取笑话网站数据,Python3.5+Django2.0构建笑话应用