• django -- model中只有Field类型的数据才能成为数据库中的列


    一、model的定义:

    from django.db import models
    
    # Create your models here.
    
    class Person(models.Model):
        first_name = models.CharField(max_length=100)
        last_name  = models.CharField(max_length=100)
    
        genders=[
                ('M',''),
                ('W',''),
            ]
        
        gender=models.CharField(max_length=64,choices=genders)
    
        class Meta():
            index_together = ["first_name", "last_name"]
            db_table="person"

    二、目标SQL语句:

    BEGIN;
    --
    -- Create model Person
    --
    CREATE TABLE "person" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "first_name" varchar(100) NOT NULL, "last_name" varchar(100) NOT NULL, "gender" varchar(64) NOT NULL);
    --
    -- Alter index_together for person (1 constraint(s))
    --
    CREATE INDEX "person_first_name_last_name_7d35cbb8_idx" ON "person" ("first_name", "last_name");
    COMMIT;

    三、总结:

      1、django默认给表加上一个id字段做主键。

      2、django默认所有的列都不为null。

      3、model只有Field类型的字段才能成为列。

    ----

  • 相关阅读:
    我来说说博客评论的事
    SWFUpload+Javascript仿163邮件上传文件
    如何暂停和终止线程
    分享我的数据处理类库,欢迎拍砖
    求数列两两之差,再求和
    poj 1006 中国剩余定理
    Poj算法做题顺序
    poj 1328
    ZOJ 3279
    poj 2352 树状数组
  • 原文地址:https://www.cnblogs.com/JiangLe/p/7920057.html
Copyright © 2020-2023  润新知