django 在原有表格添加或删除字段的实例


Posted in Python onMay 27, 2018

一、如果models.py文件为时:

timestamp = models.DateTimeField('保存日期')

会提示:

(env8) D:\Desktop\env8\Scripts\mysite>python manage.py makemigrations
You are trying to add a non-nullable field 'timestamp' to article without a defa
ult; we can't do that (the database needs something to populate existing rows).
Please select a fix:
 1) Provide a one-off default now (will be set on all existing rows)
 2) Quit, and let me add a default in models.py

输入:1 (这里要求你设置新建字段的默认值,它会在新建这个字段的同时把默认值也添加上去,)Select an option: 1

Please enter the default value now, as valid Python
The datetime and django.utils.timezone modules are available, so you can do e.g.
 timezone.now()
>>>

这里面不好修改

可以

(env8) D:\Desktop\env8\Scripts\mysite>python manage.py shell
(env8) D:\Desktop\env8\Scripts\mysite>from django.db import connection
(env8) D:\Desktop\env8\Scripts\mysite>cursor=connection.cursor()
(env8) D:\Desktop\env8\Scripts\mysite>cursor.execute('ALTER TABLEArticle add column timestamp varchar(100) default 0')

二、如果models.py文件为时:

timestamp = models.DateTimeField('保存日期',default=timezone.now,blank=False, null=False)
timestamp = models.DateTimeField('保存日期',default=timezone.now,blank=True, null=True)

blank

设置为True时,字段可以为空。设置为False时,字段是必须填写的。字符型字段CharField和TextField是用空字符串来存储空值的。如果为True,字段允许为空,默认不允许.

null

设置为True时,django用Null来存储空值。日期型、时间型和数字型字段不接受空字符串。所以设置IntegerField,DateTimeField型字段可以为空时,需要将blank,null均设为True。如果为True,空值将会被存储为NULL,默认为False。如果想设置BooleanField为空时可以选用NullBooleanField型字段。

(env8) D:\Desktop\env8\Scripts\mysite>python manage.py makemigrations就不会有下面的提示
(env8) D:\Desktop\env8\Scripts\mysite>python manage.py migrate 就行了中间不会设置数据类型(很容易出错)(若要设置默认值)

三、数据库设计是整个网站开发的核心

补充:timestamp = models.DateTimeField('保存日期')

(env8) D:\Desktop\env8\Scripts\mysite>python manage.py makemigrations
You are trying to add a non-nullable field 'timestamp' to article without a defa
ult; we can't do that (the database needs something to populate existing rows).
Please select a fix:
 1) Provide a one-off default now (will be set on all existing rows)
 2) Quit, and let me add a default in models.py
Select an option: 1
Please enter the default value now, as valid Python
The datetime and django.utils.timezone modules are available, so you can do e.g.
 timezone.now()
>>> '2017-12-16 05:04:31.000'(添加字段的数据类型格式)
Migrations for 'blog':
 0002_article_timestamp.py:
  - Add field timestamp to article
(env8) D:\Desktop\env8\Scripts\mysite>python manage.py migrate
Operations to perform:
 Synchronize unmigrated apps: staticfiles, ckeditor_uploader, messages, ckedito
r, bootstrap3
 Apply all migrations: admin, blog, contenttypes, auth, sessions
Synchronizing apps without migrations:
 Creating tables...
  Running deferred SQL...
 Installing custom SQL...
Running migrations:
 Rendering model states... DONE
 Applying blog.0002_article_timestamp...D:Desktop\env8\lib\site-packa
ges\django\db\models\fields\__init__.py:1474: RuntimeWarning: DateTimeField Arti
cle.timestamp received a naive datetime (2017-12-16 05:04:31) while time zone su
pport is active.
 RuntimeWarning)
 OK
(env8) D:\Desktop\env8\Scripts\mysite>

以上这篇django 在原有表格添加或删除字段的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Cpy和Python的效率对比
Mar 20 Python
Python检测字符串中是否包含某字符集合中的字符
May 21 Python
解决Python传递中文参数的问题
Aug 04 Python
Python的净值数据接口调用示例分享
Mar 15 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
Nov 16 Python
Python中enumerate()函数编写更Pythonic的循环
Mar 06 Python
搞定这套Python爬虫面试题(面试会so easy)
Apr 03 Python
Django中celery执行任务结果的保存方法
Jul 12 Python
Python编程中类与类的关系详解
Aug 08 Python
python实现用类读取文件数据并计算矩形面积
Jan 18 Python
keras中的History对象用法
Jun 19 Python
五种Python转义表示法
Nov 27 Python
用python写扫雷游戏实例代码分享
May 27 #Python
和孩子一起学习python之变量命名规则
May 27 #Python
儿童学习python的一些小技巧
May 27 #Python
django初始化数据库的实例
May 27 #Python
django 删除数据库表后重新同步的方法
May 27 #Python
Django 根据数据模型models创建数据表的实例
May 27 #Python
Django使用Mysql数据库已经存在的数据表方法
May 27 #Python
You might like
第4章 数据处理-php字符串的处理-郑阿奇(续)
2011/07/04 PHP
利用PHP+JS实现搜索自动提示(实例)
2013/06/09 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
2019/10/11 PHP
基于JQuery的类似新浪微博展示信息效果的代码
2012/07/23 Javascript
jquery ajax的success回调函数中实现按钮置灰倒计时
2013/11/19 Javascript
js中将String转换为number以便比较
2014/07/08 Javascript
innerHTML中标签可以换行的方法汇总
2015/08/14 Javascript
JavaScript继承学习笔记【新手必看】
2016/05/10 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
2016/05/19 Javascript
深入浅出ES6新特性之函数默认参数和箭头函数
2016/08/01 Javascript
jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
2017/03/09 Javascript
React+react-dropzone+node.js实现图片上传的示例代码
2017/08/23 Javascript
微信小程序开发之好友列表字母列表跳转对应位置
2017/09/26 Javascript
详解vue axios用post提交的数据格式
2018/08/07 Javascript
react PropTypes校验传递的值操作示例
2020/04/28 Javascript
Django中传递参数到URLconf的视图函数中的方法
2015/07/18 Python
在双python下设置python3为默认的方法
2018/10/31 Python
Python中print和return的作用及区别解析
2019/05/05 Python
Django model 中设置联合约束和联合索引的方法
2019/08/06 Python
Python xpath表达式如何实现数据处理
2020/06/13 Python
Pytorch 高效使用GPU的操作
2020/06/27 Python
如何利用Python动态模拟太阳系运转
2020/09/04 Python
vue.js刷新当前页面的实例讲解
2020/12/29 Python
详解css3 mask遮罩实现一些特效
2018/10/24 HTML / CSS
ProBikeKit德国:在线公路自行车专家
2018/06/03 全球购物
如何写一个Java类既可以用作applet也可以用作java应用
2016/01/18 面试题
英语老师推荐信
2014/02/26 职场文书
公安派出所所长四风问题个人对照检查材料
2014/10/04 职场文书
旷课检讨书500字
2014/10/14 职场文书
医院护士工作检讨书
2014/10/26 职场文书
自我检讨书范文
2015/01/28 职场文书
2016年春节慰问信息
2015/03/25 职场文书
校园音乐节目广播稿
2015/08/19 职场文书
会议承办单位欢迎词
2015/09/30 职场文书
如何书写你的职业生涯规划书?
2019/06/27 职场文书
python引入其他文件夹下的py文件具体方法
2021/05/23 Python