Django学习笔记二配置数据库

文章来源:一氧化碳中毒   发布时间:2021-5-27 19:55:52   点击数:
  擅长白癜风研究专家 https://m-mip.39.net/baidianfeng/mipso_4283860.html

1、数据库配置

在创建的工程项目中找到settings.py文件,该文件可以用来配置使用的数据库,django模式使用自带的SQLite。

现在将默认的数据库改为MySQL

注意:需要先在MySQL中创建需要使用的库,如使用命令创建一个库CREATEDATABASEdjangodemo;

DATABASES={default:{ENGINE:django.db.backends.mysql,NAME:djangodemo,USER:xxx,PASSWORD:xxxxxx,HOST:xxxxxxxxxx,PORT:#ENGINE:django.db.backends.sqlite3,#NAME:os.path.join(BASE_DIR,db.sqlite3),}}2、创建数据库表

1、创建数据库表

2、数据库迁移

3、migrate命令只会为在INSTALLED_APPS里声明了的应用进行数据库迁移。

#创建命令:pythonmanage.pymigrateE:\PyProject\Development\djangodemopythonmanage.pymigrateSystemcheckidentifiedsomeissues:WARNINGS:?:(mysql.W)MySQLStrictModeisnotsetfordatabaseconnectiondefaultHINT:MySQLsStrictModefixesmanydataintegrityproblemsinMySQL,suchasdatatruncationuponinsertion,byescalatingwarningsintoerrors.Itisstronglyre   自增列=int(11)   如果没有的话,默认会生成一个名称为id的列,如果要显示的自定义一个自增列,必须将给列设置为主键primary_key=True。2、models.CharField   字符串字段   必须max_length参数3、models.BooleanField   布尔类型=tinyint(1)   不能为空,Blank=True4、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:(-,),      IntegerField:(-,),      BigIntegerField:(-,),      PositiveSmallIntegerField:(0,),      PositiveIntegerField:(0,),   }12、models.IPAddressField   字符串类型(ip4正则表达式)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文件参数1、null=True   数据库中字段是否可以为空2、blank=True   django的Admin中添加数据时是否可允许空值3、primary_key=False   主键,对AutoField设置主键后,就会代替原来的自增id列4、auto_now和auto_now_add   auto_now自动创建---无论添加或修改,都是当前操作的时间   auto_now_add自动创建---永远是创建时的时间5、choicesGENDER_CHOICE=((uM,uMale),(uF,uFemale),)gender=models.CharField(max_length=2,choices=GENDER_CHOICE)6、max_length7、default   默认值8、verbose_name   Admin中字段的显示名称9、name

db_column   数据库中的字段名称10、unique=True   不允许重复11、db_index=True   数据库索引12、editable=True   在Admin里是否可编辑13、error_messages=None   错误提示14、auto_created=False   自动创建15、help_text   在Admin中提示帮助信息16、validators=[]17、upload-to

创建模型

#

转载请注明:http://www.lwblm.com/bytj/11961.html
  • 上一篇文章:
  • 下一篇文章: 没有了