dgango报错收集

Posted 梦中琴歌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dgango报错收集相关的知识,希望对你有一定的参考价值。

1、报错TypeError: __init__() missing 1 required positional argument: ‘on_delete‘

    django2.0以后创建数据库外键的时候必须要加on_delete参数,参数具体含义:

  • CASCADE:这就是默认的选项,级联删除,你无需显性指定它。
  • PROTECT: 保护模式,如果采用该选项,删除的时候,会抛出ProtectedError错误。
  • SET_NULL: 置空模式,删除的时候,外键字段被设置为空,前提就是blank=True, null=True,定义该字段的时候,允许为空。
  • SET_DEFAULT: 置默认值,删除的时候,外键字段设置为默认值,所以定义外键的时候注意加上一个默认值。
  • SET(): 自定义一个值,该值当然只能是对应的实体了

一般的设置为  on_delete=models.CASCADE  就可以了

补充说明:关于SET()的使用

**官方案例**
技术分享图片
1 def get_sentinel_user():
2     return get_user_model().objects.get_or_create(username=deleted)[0]
3 
4 class MyModel(models.Model):
5     user = models.ForeignKey(
6         settings.AUTH_USER_MODEL,
7         on_delete=models.SET(get_sentinel_user),
8     )
View Code

 2、django中verbose_name是什么意思?和label有什么区别?

   label是这个Field如果在form表单验证中会显示在模板的lable、而verbose_name在form中不会显示、只是作为一种说明而已

 

以上是关于dgango报错收集的主要内容,如果未能解决你的问题,请参考以下文章

Microsoft SQL Server 代码片段收集

python Dgango保存图片

Dgango模版

dgango 反射

精心收集的 48 个 JavaScript 代码片段,仅需 30 秒就可理解

dgango-博客项目之点赞与评论