<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ![](https://img.kancloud.cn/41/e0/41e066af9a6c25a24868d9667253ec98_1241x333.jpg) ## 常用字段 ### AutoField 映射到數據庫中是int類型,可以有自動增長的特性。一般不需要使用這個類型,如果不指定主鍵,那么模型會自動的生成一個叫做id的自動增長的主鍵。如果你想指定一個其他名字的并且具有自動增長的主鍵,使用AutoField也是可以的。 ### BigAutoField 64位的整形,類似于AutoField,只不過是產生的數據的范圍是從1-9223372036854775807。 ### BooleanField 在模型層面接收的是True/False。在數據庫層面是tinyint類型。如果沒有指定默認值,默認值是None。 ### CharField 在數據庫層面是varchar類型。在Python層面就是普通的字符串。這個類型在使用的時候必須要指定最大的長度,也即必須要傳遞max_length這個關鍵字參數進去。 最大長度計算:[https://www.cnblogs.com/canger/p/9850727.html](https://www.cnblogs.com/canger/p/9850727.html) ### DateTimeField 日期時間類型,不僅僅可以存儲日期,還可以存儲時間。映射到數據庫中是datetime類型。 ``` TIME_ZONE = 'Asia/Shanghai' from django.utils.timezone import localtime,now auto_now:在每次這個數據保存的時候,都使用當前的時間。 比如作為一個記錄修改日期的字段,可以將這個屬性設置為True。 auto_now_add:在每次數據第一次被添加進去的時候,都使用當前的時間。 比如作為一個記錄第一次入庫的字段,可以將這個屬性設置為True。 ``` ### EmailField 類似于CharField。在數據庫底層也是一個varchar類型。最大長度是254個字符。 ### FileField 用來存儲文件的。 ### ImageField 用來存儲圖片文件的。 ### FloatField 浮點類型。映射到數據庫中是float類型。 ### IntegerField 整形。值的區間是-2147483648——2147483647。 ### BigIntegerField 大整形。值的區間是-9223372036854775808——9223372036854775807。 ### PositiveIntegerField 正整形。值的區間是0——2147483647。 ### SmallIntegerField 小整形。值的區間是-32768——32767。 ### PositiveSmallIntegerField 正小整形。值的區間是0——32767。 ### TextField 大量的文本類型。映射到數據庫中是longtext類型。 ### UUIDField 只能存儲uuid格式的字符串。uuid是一個32位的全球唯一的字符串,一般用來作為主鍵。 ### URLField 類似于CharField,只不過只能用來存儲url格式的字符串。并且默認的max_length是200。 ## Field的常用參數 ### null 如果設置為True,Django將會在映射表的時候指定是否為空。默認是為False。在使用字符串相關的Field(CharField/TextField)的時候,官方推薦盡量不要使用這個參數,也就是保持默認值False。因為Django在處理字符串相關的Field的時候,即使這個Field的null=False,如果你沒有給這個Field傳遞任何值,那么Django也會使用一個空的字符串""來作為默認值存儲進去。因此如果再使用null=True,Django會產生兩種空值的情形(NULL或者空字符串)。如果想要在表單驗證的時候允許這個字符串為空,那么建議使用blank=True。如果你的Field是BooleanField,那么對應的可空的字段則為NullBooleanField。 ### db_column 這個字段在數據庫中的名字。如果沒有設置這個參數,那么將會使用模型中屬性的名字。 ### default 默認值。可以為一個值,或者是一個函數,但是不支持lambda表達式。并且不支持列表/字典/集合等可變的數據結構。 ### primary_key 是否為主鍵。默認是False。 ### unique 在表中這個字段的值是否唯一。一般是設置手機號碼/郵箱等。 更多Field參數請參考官方文檔:https://docs.djangoproject.com/zh-hans/2.2/ref/models/fields/ ## 模型中Meta配置 對于一些模型級別的配置。我們可以在模型中定義一個類,叫做Meta。然后在這個類中添加一些類屬性來控制模型的作用。比如我們想要在數據庫映射的時候使用自己指定的表名,而不是使用模型的名稱。那么我們可以在Meta類中添加一個db_table的屬性。 ``` class Book(models.Model): name = models.CharField(max_length=20,null=False) desc = models.CharField(max_length=100,name='description',db_column="description1") class Meta: db_table = 'book_model' ``` ### db_table 這個模型映射到數據庫中的表名。如果沒有指定這個參數,那么在映射的時候將會使用模型名來作為默認的表名。 ### ordering 設置在提取數據的排序方式。比如我想在查找數據的時候根據添加的時間排序 ``` class Book(models.Model): name = models.CharField(max_length=20,null=False) desc = models.CharField(max_length=100,name='description',db_column="description1") pub_date = models.DateTimeField(auto_now_add=True) class Meta: db_table = 'book_model' ordering = ['pub_date'] # 正序 ordering = ['-pub_date'] # 倒序 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看