django資料庫字段類型:
1
<code>1</code><code>、models.AutoField 自增列 </code><code>=</code> <code>int</code><code>(</code><code>11</code><code>)</code>
如果沒有的話,預設會生成一個名稱為id的列,如果要顯示的自定義一個自增列,必須将給列設定為主鍵 primary_key=True。
<code>2</code><code>、models.CharField 字元串字段</code>
必須有max_length 參數
<code>3</code><code>、models.BooleanFiled 布爾類型</code><code>=</code><code>tinyint(</code><code>1</code><code>)</code>
不能為空,blank=True
<code>4</code><code>、models.ComaSeparatedIntegerField 用逗号分割的數字</code><code>=</code><code>varchar</code>
繼承CharField,是以必須max_length參數
<code>5</code><code>、models.DateField 日期類型date</code>
對于參數,auto_now =True則每次更新都會更新這個時間,auto_now_add則隻是第一次建立添加,之後的更新不再改變。
<code>6</code><code>、models.DateTimeField 日期類型,datetime</code>
同DateField的參數
<code>7</code><code>、models.Decimal 十進制小數類型 </code><code>=</code> <code>decimal</code>
必須指定整數位max_digits和小數位decimal_places
<code>8</code><code>、models.EmailField 字元串類型(正規表達式郵箱) </code><code>=</code> <code>varchar</code>
對字元串進行正規表達式
<code>9</code><code>、models.FloatField 浮點類型 </code><code>=</code> <code>double</code>
<code>10</code><code>、models.IntegerField 整形</code>
<code>11</code><code>、models.BigIntegerField 長整形</code>
2
3
4
5
6
7
<code>integer_field_ranges </code><code>=</code> <code>{</code>
<code> </code><code>'SmallIntegerField'</code> <code>: (</code><code>-</code><code>32768</code><code>,</code><code>32768</code><code>),</code>
<code> </code><code>'IntegerField'</code> <code>: (</code><code>-</code><code>2147483648</code><code>, </code><code>2147483647</code><code>),</code>
<code> </code><code>'BigIntegerField'</code><code>: (</code><code>-</code><code>9223372036854775808</code><code>,</code><code>9223372036854775807</code><code>),</code>
<code> </code><code>'PositiveSmallIntegerField'</code><code>:(</code><code>0</code><code>,</code><code>32767</code><code>),</code>
<code> </code><code>'PositiveIntegerField'</code><code>: (</code><code>0</code><code>,</code><code>2147483647</code><code>),</code>
<code>}</code>
<code>12</code><code>、models.IPAddressField 字元串類型(ip4正規表達式)</code>
13、models.GenericIPAddressField
參數protocal可以是:both、IPV4、IPV6
驗證時,會根據設定報錯
<code>14</code><code>、models.NullBooleanField 允許為空的布爾類型</code>
<code>15</code><code>、models.PositiveIntegerField 正Integer</code>
<code>16</code><code>、models.PositiveSmallIntegerField 正smallInteger</code>
<code>17</code><code>、models.SlugField 減号,下劃線、字母、數字</code>
<code>18</code><code>、models.SmallIntegerField 數字</code>
資料庫中的 字段有:tinyint、smallint、int、bigint
<code>19</code><code>、models.TextField 字元串</code><code>=</code><code>longtext</code>
<code>20</code><code>、models.TimeField 時間 HH:MM[:ss[.uuuuuu]]</code>
<code>21</code><code>、models.URLField 字元串,位址正規表達式</code>
<code>22</code><code>、models.BinaryField 二進制<br></code>
<code>23</code><code>、models.ImageField 圖檔<br></code>
<code>24</code><code>、models.FilePathField 檔案</code>
更多字段的參數:
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<code>1</code><code>、null</code><code>=</code><code>True</code>
<code> 資料庫中字段是否可以為空</code>
<code>2</code><code>、blank</code><code>=</code><code>True</code>
<code> django的 Admin 中添加資料時是否可允許空值</code>
<code>3</code><code>、primary_key </code><code>=</code> <code>False</code>
<code> 主鍵,對AutoField設定主鍵後,就會代替原來的自增 </code><code>id</code> <code>列</code>
<code>4</code><code>、auto_now 和 auto_now_add</code>
<code> auto_now 自動建立</code><code>-</code><code>-</code><code>-</code><code>無論添加或修改,都是目前操作的時間,即最後更新時間</code>
<code> auto_now_add 自動建立</code><code>-</code><code>-</code><code>-</code><code>永遠是建立時的時間,即建立時間</code>
<code>5</code><code>、choices</code>
<code>GENDER_CHOICE </code><code>=</code> <code>(</code>
<code> </code><code>(u</code><code>'M'</code><code>, u</code><code>'Male'</code><code>),</code>
<code> </code><code>(u</code><code>'F'</code><code>, u</code><code>'Female'</code><code>),</code>
<code> </code><code>)</code>
<code>gender </code><code>=</code> <code>models.CharField(max_length</code><code>=</code><code>2</code><code>,choices </code><code>=</code> <code>GENDER_CHOICE)</code>
<code>6</code><code>、max_length 最大長度</code>
<code>7</code><code>、default 預設值</code>
<code>8</code><code>、verbose_name Django Admin中字段的顯示名稱</code>
<code>9</code><code>、name|db_column 資料庫中的字段名稱</code>
<code>10</code><code>、unique</code><code>=</code><code>True</code><code> 不允許重複</code>
<code>11</code><code>、db_index </code><code>=</code> <code>True</code><code> 資料庫索引</code>
<code>12</code><code>、editable</code><code>=</code><code>True</code><code> 在Admin裡是否可編輯</code>
<code>13</code><code>、error_messages</code><code>=</code><code>None</code><code> 錯誤提示</code>
<code>14</code><code>、auto_created</code><code>=</code><code>False</code><code> 自動建立</code>
<code>15</code><code>、help_text 在Django Admin中提示幫助資訊</code>
<code>16</code><code>、validators</code><code>=</code><code>[]</code>
<code>17</code><code>、upload</code><code>-</code><code>to</code>
字段類型:https://docs.djangoproject.com/en/dev/ref/models/fields/
本文轉自 曾哥最愛 51CTO部落格,原文連結:http://blog.51cto.com/zengestudy/1901638,如需轉載請自行聯系原作者