ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python--day63(ORM补充(1对1、Django类型)分页、CSRF攻击)

2019-07-17 16:51:08  阅读:198  来源: 互联网

标签:name Python res Django models day63 Admin row


1. 一对一表

1.1 创建

class UserInfo(models.Model):
    name = models.CharField(max_length=32, null=True)

class Salary(models.Model):
    money = models.CharField(max_length=32, null=True)
    su = models.OneToOneField('UserInfo', null=True)

1.2 查询

# 1、普通查询
res = models.UserInfo.objects.all()
print(res)
for row in res:
    print(row.id, row.name)

# 2、正向查询
res = models.Salary.objects.all()
for row in res:
    print(row.su.name, row.money)

# 3、反向查询
res = models.UserInfo.objects.all()
for row in res:
    print(row.name, row.salary.money)

 

2. Django类型

3、参数

- 参数:
    max_length=32
    null=True  : 可以设置为null
    db_index=True : 设置索引
    default : 设置默认值
    unique : 设置唯一索引
        
    db_column: 设置一个列名
    
    unique_together: 联合唯一索引
    index_together :普通联合索引
        class Meta:
            unique_together = (
                ('money', 'us_id'),
                ....
            )
            index_together = (
                ('money', '')
                ....
            )

 

4、Django-admin

djagno-admin:
    django自带的管理后台系统
        命令生成:
            python3 manage.py  createsuperuser
    想要管理自己生成的表:
        admin.py:
            from app01 import models
            admin.site.register(models.UserInfo)
        
    
        django-admin中的列类型:
            EmailField(CharField):
                - 字符串类型,Django Admin以及ModelForm中提供验证机制
            IPAddressField(Field)
                - 字符串类型,Django Admin以及ModelForm中提供验证 IPV4 机制
            GenericIPAddressField(Field)
                - 字符串类型,Django Admin以及ModelForm中提供验证 Ipv4和Ipv6
                - 参数:
                    protocol,用于指定Ipv4或Ipv6, 'both',"ipv4","ipv6"
                    unpack_ipv4, 如果指定为True,则输入::ffff:192.0.2.1时候,可解析为192.0.2.1,开启刺功能,需要protocol="both"
            URLField(CharField)
                - 字符串类型,Django Admin以及ModelForm中提供验证 URL
            SlugField(CharField)
                - 字符串类型,Django Admin以及ModelForm中提供验证支持 字母、数字、下划线、连接符(减号)
            CommaSeparatedIntegerField(CharField)
                - 字符串类型,格式必须为逗号分割的数字
            UUIDField(Field)
                - 字符串类型,Django Admin以及ModelForm中提供对UUID格式的验证
            FileField(Field)
    
        djagno-admin中的参数 :
            verbose_name        Admin中显示的字段名称        
    
            blank               Admin中是否允许用户输入为空
            editable            Admin中是否可以编辑
            help_text           Admin中该字段的提示信息

            choices             Admin中显示选择框的内容,用不变动的数据放在内存中从而避免跨表操作
            choices = (
                (1, '男'),
                (2, '女')
            )
            gender = models.IntegerField(choices=chocies)
            
            id name  gender (男女)

 

5、分页

 

6、CSRF攻击

 

标签:name,Python,res,Django,models,day63,Admin,row
来源: https://www.cnblogs.com/wangyong123/p/11201929.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有