问题: $ python manage.py makemigrationsYou are trying to add a non-nullable field 'name' to course 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 b…
这是我在使用Django进行models编写时的一个错误. 解决办法: 为其指定一个默认值即可 object_id = models.CharField(max_length=50, default="", primary_key=True, verbose_name="主键")…
更新models字段 出现的问题: $ python manage.py makemigrations None You are trying to add a non-nullable field 'file_type' to filejinja without a default; we can't do that (the database needs something to populate existing rows). Please select a fix: ) Provide…
规范 确立规范的好处: 代码可读性高 方便代码的定位极其查找 为以后代码扩容带来便利 场景: 在多个APP的场景下,单个app的URL函数功能较多的时候,我们可以通过以下方法来解决. 把Views写成模块的方式并且为不同的功能进行不同的划分,并且在Templates中使用同样规则,如下图: 我根据不同的html然后创建不同的函数,命名和templates模板目录一样这样非常方便找到,这个页面中的函数在哪里. 设置路由的时候就得导入相应的函数(下面的函数是在app01中的url,通过object的…
Django创建一对多表结构 首先现在models.py中写如下代码: from django.db import models # Create your models here. class Business(models.Model): caption = models.CharField(max_length=32) class Host(models.Model): nid = models.AutoField(primary_key=True) hostname = models.C…
1.当我把 DEBUG = True设为False的时候运行 python manage.py runserver 的时候 报错 : CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False. 解决方案: ALLOWED_HOSTS = ['127.0.0.1', 'localhost'] 2.报错信息: ModelForm Creating a ModelForm without either the 'fields…
到目前为止,当程序涉及到数据库相关操作时,我们一般都会这么操作:    (1)创建数据库,设计表结构和字段    (2)使用MySQLdb来连接数据库,并编写数据访问层代码    (3)业务逻辑层去调用数据访问层,执行数据库操作 import MySQLdb def GetList(sql): db = MySQLdb.connect(user=', host='localhost') cursor = db.cursor() cursor.execute(sql) data = cursor.…
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:翻译本章过程中几次想放弃,但是既然都到第十章了,怎么能放弃!) 第十章 创建一个在线学习平台(e-Learning Platform) 在上一章,你添加国际化到你的在线商店项目中.你还构建了一个优惠券系统和一个商品推荐引擎.在这章中,你会创建一个新项目.你将构建一个在线学习平台创建一个定制内容管理系统. 在这章中,你会学习以下操作:…
1. 运行manage.py任务  makemigrations时,报错: doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS. 解决:在全局setting.py的 INSTALLED_APPS中 添加 app的名字,如 2. 在添加一个生日字段 (日期类型)时报错: You are trying to add a non-nullable field 'email' to use…
1. django 模型models 常用字段          1.models.AutoField 自增列 = int(11) 如果没有的话,默认会生成一个名称为 id 的列 如果要显式的自定义一个自增列,必须设置primary_key=True.   2.models.CharField 字符串字段 必须设置max_length参数   3.models.BooleanField 布尔类型=tinyint(1) 不能为空,可添加Blank=True   4.models.ComaSepar…
name = models.CharField(max_length=50) 执行:python manage.py makemirations出现以下错误: You are trying to add a non-nullable field 'name' to contact without a default; we can't do that (the database needs something to populate existing rows). Please select a…
一:ORM关系对象映射(Object Relational Mapping,简称ORM) ORM分两种: DB first 先在数据库中创建数据库表等 Code first 先创建类,然后根据类创建数据表等.django中遵循 Code Frist 的原则,即:根据代码中定义的类来自动生成数据库表. 二:Django ORM创建 1)创建类 创建的类必须继承models.Model,在数据库中自动创建表名为:app名_表名,如:app01_userinfo from django.db impo…
报错: You are trying to add a non-nullable field 'BookName' to BookInfo 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 row…
数据库与ORM 1    django默认支持sqlite,mysql, oracle,postgresql数据库.  <1> sqlite django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 , 引擎名称:django.db.backends.sqlite3 <2> mysql 引擎名称:django.db.backends.mysql 2    mysql驱动程序 MySQLdb(mysql python) mysqlclient MySQL PyMyS…
基本命令 1.新建一个django项目 django-admin.py startproject project-name 2.新建一个app python manage.py startapp app-name 3.同步数据库 python manage.py syncdb 注意:Django 1.7.1及以上的版本需要用以下命令python manage.py makemigrationspython manage.py migrate 这种方法可以创建表,当你在models.py中新增了类…
目录 1 数据库与ORM 2 orm的配置 2.1 引擎和配置 2.2 mysql驱动程序 3 orm 表模型 3.1 创建表对象 3.2 Django字段类型 3.3 常用字段参数说明 3.4 特殊类型字段参数说明 3.5 Meta信息 3.6 生成表 3.6.1 注册app 3.6.2 修改表结构遇到的问题 4 利用orm完成数据库的增删改查 4.1 orm之增加 4.2 orm之删除 4.3 orm之修改 4.4 orm之查询 4.4.1 查询过滤方法 4.4.2 限制查询集(切片) 4.…
创建项目和应用 django-admin.py startproject project_name cd project_name python manage.py startapp app_name 添加 app_name 到 settings.py 中的 INSATLLED_APPS 中. 规划写models.py 示例: from __future__ import unicode_literals from django.db import models from django.util…
find . -path "*migrations*" -name "*.py" -not -path "*__init__*" -exec rm {} \; djang data migration 在使用django框架开发的过程中,我们不可避免的遇到models层的变更,就涉及到数据库表的变动,django给我提供了一个migration的工具来做这些数据库表的变更. djang migration 如果不加appname,那么就是指所有包…
Django admin的个性化定制首先我们看下,前面章节中定义的models在admin后台管理界面的样子: 然后我们看下老男孩教育点名平台的admin管理表的后台界面样子: admin管理后台常用的就是上面操作的这几种吧,我们来看下如何实现? 首先我们知道,使用admin后台管理表,需要将表注册到admins.py文件中: from django.contrib import admin # Register your models here. from app01 import model…
规范 确立规范的好处: 代码可读性高 方便代码的定位极其查找 为以后代码扩容带来便利 场景: 在多个APP的场景下,单个app的URL函数功能较多的时候,我们可以通过以下方法来解决. 把Views写成模块的方式并且为不同的功能进行不同的划分,并且在Templates中使用同样规则,如下图: 我根据不同的html然后创建不同的函数,命名和templates模板目录一样这样非常方便找到,这个页面中的函数在哪里. 设置路由的时候就得导入相应的函数(下面的函数是在app01中的url,通过object的…
在以下类中添加 description 字段后, class Colors(models.Model): colors = models.CharField(u'颜色', max_length=10) description = models.CharField(u'描述', max_length=10) def __str__(self): return self.colors 执行以下初始化数据库的步骤,报错 C:\PycharmProjects\HelloWorld>python mana…
You are trying to add a non-nullable field 'SKU' to product 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…
最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其实我的所有笔记都是),并不会过于详细的讲解.因此如果有大家看不明白的地方,欢迎在我正版博客下留言,有时间的时候我很愿意来这里与大家探讨问题.(当然,不能是简简单单就可以百度到的问题-.-) 我所选用的教材是<The Django Book 2.0>,本节是第十章,模型高级进阶. 在基础部分的学习中…
到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行数据库操作 import MySQLdb def GetList(sql): db = MySQLdb.connect(user='root', db='wupeiqidb', passwd='1234', host='localhost') cursor = db.cursor() cursor.execut…
狼来的日子里! 奋发博取 10)django-ORM(创建,字段类型,字段参数) 一:ORM关系对象映射(Object Relational Mapping,简称ORM) ORM分两种: DB first 先在数据库中创建数据库表等 Code first 先创建类,然后根据类创建数据表等.django中遵循 Code Frist 的原则,即:根据代码中定义的类来自动生成数据库表. 二:Django ORM创建 1)创建类 创建的类必须继承models.Model,在数据库中自动创建表名为:app…
3-3 django orm介绍与model设计 上节教程完成后代码(来学习本节前置条件): 对应commit: 留言板前端页面展示.本次内容截止教程3-2结束. 可能现在你还在通过手写sql语句来操作数据库,当我们有了orm,数据库操作变得很简单.这一小节我们来学习Django中的orm. 原生sql 与 orm 没有orm 的情况下message/views.py代码: import MySQLdb # 使用原生sql获取书的列表 def book_list(request): # 创建到数…
bug one: You are trying to add a non-nullable field 'height' to person 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 row…
一.静态文件配置 在配置静态文件时,需要创建一个文件夹在Django项目文件夹下,名字与使用无关. 静态文件包括html等使用的不会变动的插件文件等.分为三个部分: css文件夹 当前网站所有的样式文件 js文件  当前网站所有的js文件 img文件 当前网站所有的图片文件 其他(前端框架代码). 1.在静态文件的调用时,不能直接在html文件夹中使用相对路径或绝对路径进行调用,因为在页面访问的时后不会获取到该插件资源,所以需要将所有静态文件暴露给访客,使得访客可以获得. 在Django中可以使…
一.ORM的分类 ORM一般分为两类: 1.DB first:先在DB中创建数据库.表结构,然后自动生成代码中的类.在后续操作中直接在代码中操作相应的类即可. 2.Code first:直接在代码中实现各种类,然后执行,代码自动在DB中创建对应的数据库和表结构. 最常用的是后者,即Code First类型的ORM.例如 [Python自学] day-12 (Mysql.事务.索引.ORM) 中的SQLAlchemy,我们即将要了解的Django ORM也属于Code first. 二.利用ORM…
继博客(三)实现的, 建两个字段,username 用户存放用户名,headImg 用户存放上传文件的路径. 重新同步数据库: 提示: 这个可能是之前已创建了表中的一条记录,之后模型中增加了一个非空的字段,但是原来已经存在的记录没有这个值 >python manage.py makemigrations You are trying to add a non-nullable field 'price_monthly' to product without a default; we can't…