鱼C论坛

 找回密码
 立即注册
查看: 1552|回复: 3

django迁移模型entry 提示 on delete

[复制链接]
发表于 2018-4-4 10:10:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
根据图书《python编程从入门到实践》来操作,修改完models.py后,执行命令python manage.py makemigrations learning_logs,就报错,求大神指点。
QQ图片20180404100403.png

model.py 代码如下

from django.db import models
class Topic(models.Model):

"""用户学习的主题"""
text = models.CharField(max_length = 200)
date_added = models.DateTimeField(auto_now_add = True)

def __str__ (self):
    """返回模型的字符串表示"""
    return self.text
class Entry(models.Model):

"""学到的有关某个主题的具体知识"""
topic = models.ForeignKey(Topic)
text = models.TextField()
date_added = models.DateTimeField(auto_now_add = True)

class Meta:
    verbose_name_plural = 'entries'

def __str__(self):
    """返回模型的字符串表示"""
    return self.text[:50] + "..."


manage.py 代码如下

#!/usr/bin/env python
import os
import sys

if name == "__main__":

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "learning_log.settings")
try:
    from django.core.management import execute_from_command_line
except ImportError as exc:
    raise ImportError(
        "Couldn't import Django. Are you sure it's installed and "
        "available on your PYTHONPATH environment variable? Did you "
        "forget to activate a virtual environment?"
    ) from exc
execute_from_command_line(sys.argv)
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-4-4 10:21:31 | 显示全部楼层
  在迁移模型Entry时,运行代码python manage.py makemigrations learning_logs,报错

TypeError: __init__() missing 1 required positional argument: 'on_delete'

        经官方文档解释:https://docs.djangoproject.com/e ... /fields/#foreignkey发现foreignkey需要增加一个参数on_delete,于是将topic = models.ForeignKey(Topic)  更改为

topic = models.ForeignKey('Topic', on_delete=models.CASCADE),成功运行。


来源 :  https://blog.csdn.net/zhouyl02/article/details/79325748
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-4-4 10:25:45 | 显示全部楼层
黑夜 发表于 2018-4-4 10:21
在迁移模型Entry时,运行代码python manage.py makemigrations learning_logs,报错

TypeError: __ini ...

已解决,谢谢您
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-22 22:38:42 | 显示全部楼层
最近也在学习,Python和django更新太快了,跟不上节奏啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-12-29 03:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表