时间:2021-05-22
一、如果models.py文件为时:
timestamp = models.DateTimeField('保存日期')会提示:
(env8) D:\Desktop\env8\Scripts\mysite>python manage.py makemigrationsYou are trying to add a non-nullable field 'timestamp' to article without a default; 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 PythonThe 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 makemigrationsYou are trying to add a non-nullable field 'timestamp' to article without a default; 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.pySelect an option: 1Please enter the default value now, as valid PythonThe 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 migrateOperations to perform: Synchronize unmigrated apps: staticfiles, ckeditor_uploader, messages, ckeditor, bootstrap3 Apply all migrations: admin, blog, contenttypes, auth, sessionsSynchronizing 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-packages\django\db\models\fields\__init__.py:1474: RuntimeWarning: DateTimeField Article.timestamp received a naive datetime (2017-12-16 05:04:31) while time zone support is active. RuntimeWarning) OK(env8) D:\Desktop\env8\Scripts\mysite>以上这篇django 在原有表格添加或删除字段的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了JS/jQuery实现超简单的Table表格添加,删除行功能。分享给大家供大家参考,具体如下:最近需要表格添加删除行,添加行简单,删除行就有点儿懵
关于djangomodels中添加字段的一个小节,记录下django的models中已经写好了字段,可是后面我又想在添加一些字段,于是就在models中添加了字
1.卸载原有的驱动 1.1可以在:开始>控制面板>添加或删除程序>删除ralink项目。 1.2也可以在“开始>所有程序>RalinkWirel
Numbers中一些表格的添加可以让你的内容更完整,这一次小编主要讲的就是表格的添加删除操作。Numbers怎么添加删除表格?Numbers如何添加删除表格?马
删除字段从Model中删除一个字段要比添加容易得多。删除字段,仅仅只要以下几个步骤:删除字段,然后重新启动你的web服务器。用以下命令从数据库中删除字段:ALT