zoukankan      html  css  js  c++  java
  • django-ForeignKey,OneToOneField,ManyToManyField

    进入到django自带的related.py中,可以看到

    1.ForeignKey

    初始化的参数有:

    to, on_delete, related_name=None, 
    related_query_name=None,limit_choices_to=None,
    parent_link=False, to_field=None,
    db_constraint
    =True, **kwargs

    假设我们有:

    class Author(models.Model):
        author = models.CharField(max_length=250)
     
    class Books(models.Model): 
        book = models.ForeignKey(to='Author',on_delete=models.CASCADE,to_field='id')

    to:被关联表的名称

    on_delete:删除带有外键的信息时,定义了删除的操作:

    • CASCADE:删除作者信息一并删除作者名下的所有书的信息;
    • PROTECT:删除作者的信息时,采取保护机制,抛出错误:即不删除Books的内容;
    • SET_NULL:只有当null=True才将关联的内容置空;
    • SET_DEFAULT:设置为默认值;
    • SET( ):括号里可以是函数,设置为自己定义的东西;
    • DO_NOTHING:字面的意思,啥也不干,你删除你的干我毛线关系;

    to_field:被关联的字段,一般是主键,也可以是值唯一的字段

    2.OneToOne

    初始化参数有:

    to, on_delete, to_field=None, **kwargs

    3.ManyToMany

    初始化参数有:

    to, related_name=None, related_query_name=None,
    limit_choices_to=None, symmetrical=None, through=None,
    through_fields=None, db_constraint=True, db_table=None,
    swappable=True, **kwargs

  • 相关阅读:
    热更新--动态加载framework
    封装framework注意点
    zip压缩和解压缩
    iOS 网络请求数据缓存
    tomcat服务器访问网址组成
    iOS--支付宝环境集成
    线程10--NSOperation的基本操作
    线程9--NSOperation
    线程8--GCD常见用法
    线程7--GCD的基本使用
  • 原文地址:https://www.cnblogs.com/xiximayou/p/11778048.html
Copyright © 2011-2022 走看看