当前位置: 首页 > news >正文

关于建设网站的图片素材数字媒体艺术就业方向

关于建设网站的图片素材,数字媒体艺术就业方向,物流网站的建设方案总结,大学生编程培训机构比较有用 转自 http://blog.csdn.net/fgf00/article/details/53678205 一、DjangoORM 创建基本类型及生成数据库表结构 1、简介 2、创建数据库 表结构 二、Django ORM基本增删改查 1、表数据增删改查 2、表结构修改 三、Django ORM 字段类型 1、字段类型介绍 2、字段参数介绍 3…比较有用 转自 http://blog.csdn.net/fgf00/article/details/53678205 一、DjangoORM 创建基本类型及生成数据库表结构 1、简介 2、创建数据库 表结构 二、Django ORM基本增删改查 1、表数据增删改查 2、表结构修改 三、Django ORM 字段类型 1、字段类型介绍 2、字段参数介绍 3、Django ORM 外键操作 一、DjangoORM 创建基本类型及生成数据库表结构 1、简介 ORM关系对象映射。定义一个类自动生成数据库的表结构。 创建数据库的时候一般有以下几种常用数据类型数字、字符串以及时间。 ORM分为两种 DB First 数据库里先创建数据库表结构根据表结构生成类根据类操作数据库Code First 先写代码执行代码创建数据库表结构主流的orm都是code first。django 的orm也是code first所以学的时候本质就分为两块 根据类自动创建数据库表根据类对数据库表中的数据进行各种操作2、创建数据库 表结构 先写类app下models.py文件 from django.db import models class UserInfo(models.Model): # 必须继承models.Model # 不写则django默认创建ID列自增主键 # 用户名列字符串类型指定长度 username models.CharField(max_length32) password models.CharField(max_length64) 注册APP执行命令python manage.py makemigrations会提示No changes detected这是因为执行命令时会找所有models但是django不知道找哪个所有需要指定一下。 settings.py INSTALLED_APPS [ django.contrib.admin, django.contrib.auth, django.contrib.contenttypes, django.contrib.sessions, django.contrib.messages, django.contrib.staticfiles, app01, # 这里添加app] 执行命令生成表结构python manage.py makemigrations # 生成migrations临时文件python manage.py migrate # 根据migrations直接生成数据库12执行后从migrations便会产生操作记录。生成数据库默认情况下用的sqlite3。可以用navicat等软件直接打开。 db.sqlite3里面包含缓存、session、cookie、静态文件以及后台管理。像咱们创建的表名叫app01_userinfo 连接mysql数据库如果不使用sqlite使用mysql数据库。代码不用改、命令也不用改只需要改下配置文件。 # https://docs.djangoproject.com/en/1.10/ref/settings/#databases 官网文档# DATABASES { # sqlite 默认# default: {# ENGINE: django.db.backends.sqlite3,# NAME: os.path.join(BASE_DIR, db.sqlite3),# }# }DATABASES { # mysql default: { ENGINE: django.db.backends.mysql, NAME: mydatabase, USER: mydatabaseuser, PASSWORD: mypassword, HOST: 127.0.0.1, PORT: 3306, }} 注意 数据库名django不能创建需要自己提前创建 Django默认使用MySQLdb模块链接MySQL但python3现在还没有MySQLdb所以改为用pymysql去连。在project项目名下的__init__.py里面 import pymysqlpymysql.install_as_MySQLdb()12二、Django ORM基本增删改查 1、表数据增删改查 urls.py url(r^orm/, views.orm),1app01/views.py from app01 import models # 导入models模块def orm(request):# 创建数据 # 第一种方式 # models.UserInfo.objects.create(usernameroot,password123) # 第二种方式 # obj models.UserInfo(usernamefzh, passwordiajtag) # obj.save() # 第三种方式 # dic {username:fgf, password:666} # models.UserInfo.objects.create(**dic) # 查询数据 # result models.UserInfo.objects.all() # 查询所有为QuerySet类型可理解成列表 # result models.UserInfo.objects.filter(usernamefgf,password666) # 列表 # result models.UserInfo.objects.filter(usernamefgf).first() # 对象 # 条件查询。filter 相当于where查询条件里面的会组成and条件 # for row in result: # 打印查询到数据。 # print(row.id,row.username,row.password) # 查看QuerySet类型具体做了什么事情可以 print(result.query) # 删除数据 # models.UserInfo.objects.all().delete() # 删除所有 # models.UserInfo.objects.filter(id4).delete() # 删除所有 # 更新数据 # models.UserInfo.objects.all().update(password8888) # models.UserInfo.objects.filter(id3).update(password888888) return HttpResponse(orm) 2、表结构修改 修改列把最初定义的类中字段password models.CharField(max_length64)改为password models.CharField(max_length60)。重新执行python manage.py makemigrationspython manage.py migrate则数据表结构更改了。如果列内内容超过定义大小则数据就丢了。 增加一列类中增加一列执行命令会有提示信息因为默认情况下是不允许为空的。这里提供两个选项。 输入一个值新增列已存在的行默认加上输入的内容。email models.CharField(max_length32, nullTrue)允许为空查看表结构变化时刷新看不出来需要重新打开表看效果。 删除列类内删掉相应的字段执行命令即可。 三、Django ORM 字段类型 1、字段类型介绍 Django ORM 字段类型中有CharField、EmailField、URLField、GenericIPAddressField等实际上在数据库里都是字符串。不能做检查语法做不了验证。那这个有什么用呢 这些是给Django 的 admin 用的。在admin那个网页上做验证。如果不用admin那那些都是字符串效果都一样。 自定义自增列models.AutoField(primary_keyTrue) 1、models.AutoField  自增列 int(11)  如果没有的话默认会生成一个名称为 id 的列如果要显示的自定义一个自增列必须将给列设置为主键 primary_keyTrue。2、models.CharField  字符串字段  必须 max_length 参数3、models.BooleanField  布尔类型tinyint(1)  不能为空BlankTrue4、models.ComaSeparatedIntegerField  用逗号分割的数字varchar  继承CharField所以必须 max_lenght 参数5、models.DateField  日期类型 date  对于参数auto_now True 则每次更新都会更新这个时间auto_now_add 则只是第一次创建添加之后的更新不再改变。6、models.DateTimeField  日期类型 datetime  同DateField的参数7、models.Decimal  十进制小数类型 decimal  必须指定整数位max_digits和小数位decimal_places8、models.EmailField  字符串类型正则表达式邮箱 varchar  对字符串进行正则表达式9、models.FloatField  浮点类型 double10、models.IntegerField  整形11、models.BigIntegerField  长整形  integer_field_ranges {    SmallIntegerField: (-32768, 32767),    IntegerField: (-2147483648, 2147483647),    BigIntegerField: (-9223372036854775808, 9223372036854775807),    PositiveSmallIntegerField: (0, 32767),    PositiveIntegerField: (0, 2147483647),  }12、models.IPAddressField  字符串类型ip4正则表达式(已弃用用13、)13、models.GenericIPAddressField  字符串类型ip4和ip6是可选的  参数protocol可以是both、ipv4、ipv6  验证时会根据设置报错14、models.NullBooleanField  允许为空的布尔类型15、models.PositiveIntegerFiel  正Integer16、models.PositiveSmallIntegerField  正smallInteger17、models.SlugField  减号、下划线、字母、数字18、models.SmallIntegerField  数字  数据库中的字段有tinyint、smallint、int、bigint19、models.TextField  字符串longtext20、models.TimeField  时间 HH:MM[:ss[.uuuuuu]]21、models.URLField  字符串地址正则表达式22、models.BinaryField  二进制23、models.ImageField 图片24、models.FilePathField 文件 如上那么多的字段可大致分为 字符串、数字、时间、二进制、自增primary_keyTrue几类。 2、字段参数介绍 数据库中的字段参数null # 是否可以为空default # 默认值primary_key # 主键db_column # 列名db_index # 索引(db_indexTrue)unique # 唯一索引(uniqueTrue)unique_for_date # 只对日期索引unique_for_month # 只对月份索引unique_for_year # 只对年做索引auto_now # 创建时自动生成时间auto_now_add # 更新时自动更新为当前时间 # 更新时间不支持这种 obj UserGroup.objects.filter(id1).update(captionCEO) obj UserGroup.objects.filter(id1).first() # 自动更新时间需要这样写 obj.caption CEO obj.save() 以下是只针对admin的字段参数choices # 作用1、django admin中显示下拉框2、避免连表查询1 user_type_choices ( # 数据库只存1、2、3后面的信息存在内存里。 (1, 超级用户), (2, 普通用户), (3, 普普通用户), ) user_type_id models.IntegerField(choicesuser_type_choices,default1) blank # django admin是否可以为空verbose_name # django admin显示字段中文editable # django admin是否可以被编辑error_messages # 错误信息 # error_messages{required:密码不能为空,} # 注意必须有逗号help_text # django admin提示validators # django form ,自定义错误信息 python manage.py createsuperuser # 创建 Django 用户 3、Django ORM 外键操作 连表关系之一对多models.ForeignKey(ColorDic) models.py 表关联class UserGroup(models.Model): uid models.AutoField(primary_keyTrue) caption models.CharField(max_length32,uniqueTrue) ctime models.DateTimeField(auto_now_addTrue, nullTrue) uptime models.DateTimeField(auto_nowTrue, nullTrue) class UserInfo(models.Model): username models.CharField(max_length32,blankTrue,verbose_name用户名) password models.CharField(max_length60, help_textpwd) email models.CharField(max_length60) test models.EmailField(max_length19,nullTrue,error_messages{invalid: 请输入密码,}) # UserInfo表中没有user_group字段而是 user_group_id 列 值为 uid 数字 user_group models.ForeignKey(UserGroup,to_fielduid) # 外键关联 ********** 数据查询user_list Userinfo.objects.all() # 获取Userinfo对象for row in user_list: # print(row.user_group_id) # 数据库里真实存在的数据 # user_group代指UserGroup对象。类UserGroup对象里封装了uid,catption,ctime,uptime print(row.user_group.uid) # 通过对象获取uid和user_group_id一样 print(row.user_group.caption) # 通过对象获取caption 创建数据UserInfo表创建数据怎么写呢 models.UserInfo.objects.create( usernameroot1, password123, emailasdfasdf, testasdfasdf, # 第一种方式再次查询数据库不推荐 # user_group models.UserGroup.objects.filter(id1).first() # 第二种方式通过 外键字段_id user_group_id 1 )       null - db是否可以为空 default - 默认值 primary_key - 主键 db_column - 列名 db_index - 索引 unique - 唯一索引 unique_for_date - unique_for_month unique_for_year auto_now - 创建时自动生成时间 auto_now_add - 更新时自动更新为当前时间 # obj UserGroup.objects.filter(id1).update(captionCEO) # obj UserGroup.objects.filter(id1).first() # obj.caption CEO # obj.save() choices - django admin中显示下拉框避免连表查询 blank - django admin是否可以为空 verbose_name - django admin显示字段中文 editable - django admin是否可以被编辑 error_messages - 错误信息欠 help_text - django admin提示   新建和更新时间字段 ctime models.DateTimeField(auto_now_addtrue,nulltrue) uptime models.DateTimeField(auto_nowtrue,nulltrue)          模板中这种用row.b__caption 来获取值转载于:https://www.cnblogs.com/testway/p/7552521.html
http://www.pierceye.com/news/528664/

相关文章:

  • 注册网站不用手机短信验证的网站营销型网站的建设起步
  • 国内高清图片素材网站推荐元素领域wordpress
  • 沙朗做网站公司网页制作免费网站制作
  • 营销型网站重要特点是网站播放视频速度优化
  • 建设厅报名网站做PHP网站前端网站进不去
  • 网站开发后台 amp建网页还是网站
  • 云南个旧建设局网站宁波关键词优化品牌
  • 网站建设方案应急处置wordpress我爱水煮鱼
  • 网页设计模板html代码班级主题广东seo推广
  • 西安 网站托管西安网站关键词排名
  • 做网站用discuz还是wp汉狮做网站公司郑州
  • 网站运营服务中心建设方案网页免费制作网站
  • 做网站销售有前景怎么注销网站
  • 福州建设网站设计电子商务网站平台有哪些
  • 扁平化色块风格的网站企业网站建设客户需求调查问卷
  • 网站建设产品服务痘痘如何去除效果好
  • 展会电子商务网站如何建设单页网站如何做
  • 济南软件外包邢台seo服务公司
  • 网站建设2017主流代码语言垂直型电商网站如何做
  • 重庆 网站定制推广产品怎么发朋友圈
  • 网站建设公司初心经典企业网站欣赏
  • 本地网站开发公司网站建设 产品拍照
  • 军队营房基础建设网站wordpress 标签云集
  • 苏州建设建设信息网站如何给自己的店做小程序
  • 沈阳微营销网站制作厨师培训机构 厨师短期培训班
  • 个人备案用作资讯网站网站开发yuanmus
  • 大连网站建设 选领超科技网站建设实录音乐
  • 上海网站建设流wordpress关闭会员
  • 网站运营的目的及意义pc网站怎么适配移动端
  • 网站深圳优化建设10月上海娱乐场所又要关门了