首先我们要了解 django 字段类型 SlugField,SlugField 是一个新闻术语(通常叫做短标题)。一个 slug 只能包含字母、数字、下划线或者是连字符,通常用来作为短标签。...Category(models.Model): """ 节点类别表 """ name = models.CharField(max_length=128, unique=True..., verbose_name="类别名称") slug = models.SlugField(max_length=128, unique=True, verbose_name="url标识符"...) create_time = models.DateTimeField(auto_now_add=True, verbose_name="创建时间") def save(self,...class Article(Model): title = CharField(max_length=200) pub_date = DateField(auto_now_add=True
Django 提供了很多字段类型,比如 URL/Email/IP/ 但是 mysql 数据没有这些类型,这类型存储到数据库上本质是字符串数据类型,主要目的是为了封装底层 SQL 语句。...① 字符串类 EmailField(CharField) IPAddressField(Field) URLField(CharField) SlugField(CharField) UUIDField...② 时间字段 models.DateTimeField(null=True) date = models.DateField() ③ 数字字段 # 总长度最大30位,小数位10位 (max_digits...), (2, 'SVIP'), (3, '普通用户') } # 枚举类型 lover = models.IntegerField(choices=choice) ⑤ 其它字段 # 设置索引 db_index...= True # 设置唯一索引 unique(唯一) = True # 联合唯一索引 class Meta: unique_together = ( ('email', 'name')
的User派生或者重写,这样要比较小心地满足Django一些耦合的地方,才能利用起Django的用户认证 和管理。...user.is_active=True user.is_superuser = True user.save(using=self...., db_index=True) pwd = models.CharField(max_length=128) mobilebind = models.IntegerField(...from user.models import User # 这里改成对应的包 class UserCreationForm(forms.ModelForm): """A form...password1"]) if commit: user.save() return user class UserChangeForm(forms.ModelForm
(14) SlugField # "Slug" 是一个报纸术语. slug 是某个东西的小小标记(短签), 只包含字母,数字,下划线和连字符....#在 # 以前的 Django 版本,没有任何办法改变50 这个长度. # 这暗示了 db_index=True....from which to auto-#populate # the slug, via JavaScript,in the object's admin form: models.SlugField...缺省为真 (5) primary_key:设置主键,如果没有设置django创建表时会自动加上: id = meta.AutoField('ID', primary_key=True)...非有效产生 django.core.validators.ValidationError 错误 (9) db_column,db_index :如果为真将为此字段创建索引 (10)choices:一个用来选择值的
Django 系列博客(十三) 前言 本篇博客介绍 Django 中的常用字段和参数。 ORM 字段 AutoField int 自增列,必须填入参数 primary_key=True。...primary_key = True 注:当model中如果没有自增列,则自动会创建一个列名为id的列 from django.db import models class UserInfo(models.Model...(CharField) - 字符串类型,Django Admin以及ModelForm中提供验证 URL SlugField(CharField) - 字符串类型,Django Admin以及ModelForm...PositiveIntegerField': 'integer UNSIGNED', 'PositiveSmallIntegerField': 'smallint UNSIGNED', 'SlugField...unique 如果设置 unique=True,则该字段在此表中必须是惟一的。 db_index 如果 db_index=True, 则代表着为此字段设置索引。 default 为该字段设置默认值。
Django支持MySQL5.5及更高版本。 Django ORM 常用字段和参数 常用字段 AutoField int自增列,必须填入参数 primary_key=True。...- bigint自增列,必须填入参数 primary_key=True 注:当model中如果没有自增列,则自动会创建一个列名为id的列 from django.db...Admin以及ModelForm中提供验证 URL SlugField(CharField) - 字符串类型,Django Admin以及ModelForm中提供验证支持 字母...PositiveIntegerField': 'integer UNSIGNED', 'PositiveSmallIntegerField': 'smallint UNSIGNED', 'SlugField...unique 如果设置为unique=True 则该字段在此表中必须是唯一的 db_index 如果db_index=True 则代表着为此字段设置索引。 default 为该字段设置默认值。
Django中的事务 还未进行详细讲解 orm字段及参数 常用字段: 字段 描述 AutoField int自增列,必须填入参数 primary_key=True。...unique 如果设置为unique=True 则该字段在此表中必须是唯一的 。 db_index 如果db_index=True 则代表着为此字段设置索引。 default 为该字段设置默认值。...Django字段集合 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField)...- bigint自增列,必须填入参数 primary_key=True 注:当model中如果没有自增列,则自动会创建一个列名为id的列 from django.db...Admin以及ModelForm中提供验证 URL SlugField(CharField) - 字符串类型,Django Admin以及ModelForm中提供验证支持 字母
1、models.AutoField 自增列 = int(11) 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列设置为主键 primary_key=True...2、models.CharField 字符串字段 必须 max_length 参数 3、models.BooleanField 布尔类型=tinyint(1) 不能为空,Blank=True...15、models.PositiveIntegerFiel 正Integer 16、models.PositiveSmallIntegerField 正smallInteger 17、models.SlugField... 数据库中字段是否可以为空 2、blank=True django的 Admin 中添加数据时是否可允许空值 3、primary_key = False 主键,对AutoField设置主键后... 不允许重复 11、db_index = True 数据库索引 12、editable=True 在Admin里是否可编辑 13、error_messages=None 错误提示 14、auto_created
Django通过model不可以创建数据库,但可以创建数据库表,一下是创建表的字段以及表字段的参数。...字段 1、models.AutoField 自增列 = int(11) 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列设置为主键 primary_key=True...15、models.PositiveIntegerFiel 正Integer 16、models.PositiveSmallIntegerField 正smallInteger 17、models.SlugField... 数据库中字段是否可以为空 2、blank=True django的 Admin 中添加数据时是否可允许空值 3、primary_key = False 主键,对AutoField设置主键后... 不允许重复 11、db_index = True 数据库索引 12、editable=True 在Admin里是否可编辑 13、error_messages=None 错误提示 14、auto_created
模型定义参考 字段 对字段名称的限制 字段名不能是Python的保留字,否则会导致语法错误 字段名不能有多个连续下划线,否则影响ORM查询操作 Django模型字段类 字段类 说明 AutoField...只能存储正数) SlugField 存储slug(简短标注) SmallIntegerField 存储16位有符号整数 TextField 存储数据量较大的文本 TimeField 存储时间 URLField...是否允许为NULL,默认为False choices 设定字段的选项,各元组中的第一个值是设置在模型上的值,第二值是人类可读的值 db_column 字段对应到数据库表中的列名,未指定时直接使用字段的名称 db_index...on_delete:外键关联的对象被删除时对应的动作,可取的值包括django.db.models中定义的: CASCADE:级联删除。...through:指定维持多对多关系的中间表的Django模型。 throughfields:定义了中间模型时可以指定建立多对多关系的字段。 db_table:指定维持多对多关系的中间表的表名。
---- BooleanField 布尔值类型,储存布尔值,True或者False ---- EmailField 字符串类型,Django Admin以及ModelForm中提供验证机制...Admin以及ModelForm中提供验证 URL SlugField(CharField) - 字符串类型,Django Admin以及ModelForm中提供验证支持 字母...(null=False,null=True) ---- unique 设置唯一。如果设置为unique=True 则该字段在此表中必须是唯一的 。 ---- db_index 设置索引。...如果db_index=True 则代表着为此字段设置索引。 ---- default 为该字段设置默认值 AutoField参数 primary_key 设置主键。...默认为True。 ---- through 在使用ManyToManyField字段时,Django将自动生成一张表来管理多对多的关联关系。
15、models.PositiveIntegerFiel 正Integer 16、models.PositiveSmallIntegerField 正smallInteger 17、models.SlugField...): nid = models.AutoField(primary_key=True) hostname = models.CharField(max_length=32,db_index...=True) ip = models.GenericIPAddressField(protocol='ipv4',db_index=True) port = models.IntegerField...) hostname = models.CharField(max_length=32,db_index=True) ip = models.GenericIPAddressField(...protocol='both',db_index=True) port = models.IntegerField() business = models.ForeignKey(to='
PositiveIntegerField': 'integer UNSIGNED', 'PositiveSmallIntegerField': 'smallint UNSIGNED', 'SlugField...Admin以及ModelForm中提供验证 URL SlugField(CharField) - 字符串类型,Django Admin以及ModelForm中提供验证支持 字母...数据库中字段的列名 db_tablespace default 数据库中字段的默认值 primary_key 数据库中字段是否为主键 db_index...models from django import forms class UserInfoForm(forms.ModelForm): username.../upload/') date = models.DateTimeField(auto_now_add=True) from django.db import models class UploadFile
Field Types 常用参数: null 如果设置为 True , Django 存放一个 NULL 到数据库字段。默认为 False。...blank 如果设置为 True , 此 field 允许为 blank (空白),默认为 False。...如果没有给出详细的名称,Django将自动使用字段的属性名来代替他。替代过程中会转换下划线为空格。...20、SlugField 只能包含字母,数字,下划线和连字符的字符串,通常被用于URLs表示。可选参数max_length=50,prepopulate_from用于指示在admin表单中的可选值。...db_index,默认为True。
SlugField "Slug" 是一个报纸术语. slug 是某个东西的小小标记(短签), 只包含字母,数字,下划线和连字符....#在 以前的 Django 版本,没有任何办法改变50 这个长度. 这暗示了 db_index=True....fields from which to auto-#populate the slug, via JavaScript,in the object's admin form: models.SlugField...(1)null 如果为True,Django 将用NULL 来在数据库中存储空值。 默认值是 False. (1)blank 如果为True,该字段允许不填。默认为False。...如果你没有指定任何一个字段的primary_key=True, Django 就会自动添加一个IntegerField字段做为主键,所以除非你想覆盖默认的主键行为, 否则没必要设置任何一个字段的primary_key
在Django项目中设置连接数据库的相关配置(告诉Django连接哪一个数据库) # 数据库相关的配置 DATABASES = { 'default': { ...Django用pymysql来代替默认的MySQLdb pymysql.install_as_MySQLdb() 4....Admin以及ModelForm中提供验证 URL SlugField(CharField) - 字符串类型,Django Admin以及ModelForm中提供验证支持 字母...4. db_index 如果db_index=True 则代表着为此字段设置数据库索引。 5....DateField和DateTimeField才有的参数: auto_now_add=True --> 创建数据的时候自动把当前时间赋值 auto_add=True
from django.db.models.signals import post_save from django.contrib.auth import get_user_model from django.template.defaultfilters..., verbose_name="节点名称") # SlugField 是一个新闻术语(通常叫做短标题)。...如果没有指定 # max_length, Django将会默认长度为50。 # 将Field.db_index设置为True。...# 根据某些其他值的值自动预填充SlugField通常很有用。你可以在admin中使用 prepopulated_fields 自动执行此操作。...slug = models.SlugField(max_length=128, unique=True, verbose_name="url标识符") create_time = models.DateTimeField
08.15自我总结 关于django的表单不同关系之间的创建 一.不同关系之间的创建 1.一对一 举例 母表:userinfo id name age 1 张三 12 2 李四 58 字表:private...(max_length=32, null=True) sp = models.OneToOneField("UserInfo", null=True) #oneTooneField: 一对一,...(models.Model): b = models.ForeignKey('Boy',null=True) g = models.ForeignKey('Girl',null=True...数据库中字段是否可以为空 db_column 数据库中字段的列名 default 数据库中字段的默认值 primary_key 数据库中字段是否为主键 db_index...192.0.2.1,开启刺功能,需要protocol="both" URLField(CharField):字符串类型,Django Admin以及ModelForm中提供验证 URL SlugField
Django支持MySQL5.5及更高版本。 Django中ORM常用的字段和参数 常用的字段 AutoField:int自增型,必须填入参数 primary_key = True 。...Admin以及ModelForm中提供验证 URL SlugField(CharField) - 字符串类型,Django Admin以及ModelForm中提供验证支持 字母...PositiveIntegerField': 'integer UNSIGNED', 'PositiveSmallIntegerField': 'smallint UNSIGNED', 'SlugField...unique:如果设置为unique=True 则该字段在此表中必须是唯一的 。 db_index:如果db_index=True 则代表着为此字段设置索引。 default:为该字段设置默认值。...默认值为True,这个选项为True时Django可以对数据库表进行 migrate或migrations、删除等操作。
Django中的表单 Django中的表单丰富了传统的HTML语言中的表单。在Django中的表单,主要做以下两件事 渲染表单模板。 表单验证数据是否合法。...2.Django中表单使用流程 在讲解Django表单的具体每部分的细节之前。我们首先先来看下整体的使用流程。...category = models.CharField(max_length=100) create_time = models.DateTimeField(auto_now_add=True...from django import forms class MyForm(forms.ModelForm): class Meta: model = Article...比如只想验证title和content,那么可以使用以下代码实现 from django import forms class MyForm(forms.ModelForm): class Meta