日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

django基础(一)

發布時間:2023/11/27 生活经验 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 django基础(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、創建django程序

  1、終端:django-admin startproject sitename

  2、IDE創建Django程序時,本質上都是自動執行上述命令

  常用命令:

    python manage.py runserver    

    python manage.py startapp appname

    python manage.py syncdb

    python manage.py makemigrations

    python manage.py migrate    

    python manage.py shell

二、Django程序目錄

  

三、配置文件

?

  1.數據庫

 1 DATABASES = {
 2     'default': {
 3     'ENGINE': 'django.db.backends.mysql',
 4     'NAME':'dbname',
 5     'USER': 'root',
 6     'PASSWORD': 'xxx',
 7     'HOST': '',
 8     'PORT': '',
 9     }
10 }

  2.模版

1 TEMPLATE_DIRS = (
2         os.path.join(BASE_DIR,'templates'),
3     )

  3.靜態文件  

1 STATICFILES_DIRS = (
2         os.path.join(BASE_DIR,'static'),
3     )

四、路由系統

  django中的路由系統和其他語言的框架有所不同,在django中每一個請求的url都要有一條路由映射,這樣才能將請求交給對一個的view中的函數去處理。其他大部分的Web框架則是對一類的url請求做一條路由映射,從而是路由系統變得簡潔。

  1.每個路由規則對應一個view中的函數

1 url(r'^index/(\d*)', views.index),
2 url(r'^manage/(?P<name>\w*)/(?P<id>\d*)', views.manage),
3 url(r'^manage/(?P<name>\w*)', views.manage,{'id':333}),

  2.根據app對路由規則進行一次分類

1 url(r'^web/',include('web.urls')),

五、模型

  django使用一種新的方式,即:關系對象映射(Object Relational Mapping,簡稱ORM)。

  django中遵循 Code Frist 的原則,即:根據代碼中定義的類來自動生成數據庫表。

  1、創建Model,之后可以根據Model來創建數據庫表

1 from django.db import models
2  
3 class userinfo(models.Model):
4     name = models.CharField(max_length=30)
5     email = models.EmailField()
6     memo = models.TextField()

    更多字段:

 1 models.AutoField  自增列 = int(11)
 2     如果沒有的話,默認會生成一個名稱為 id 的列,如果要顯示的自定義一個自增列,必須將給列設置為主鍵 primary_key=True。
 3 models.CharField  字符串字段
 4   必須 max_length 參數
 5 models.BooleanField  布爾類型=tinyint(1)
 6   不能為空,Blank=True
 7 models.ComaSeparatedIntegerField  用逗號分割的數字=varchar
 8   繼承CharField,所以必須 max_lenght 參數
 9 models.DateField  日期類型 date
10   對于參數,auto_now = True 則每次更新都會更新這個時間;auto_now_add 則只是第一次創建添加,之后的更新不再改變。
11 models.DateTimeField  日期類型 datetime
12   同DateField的參數
13 models.Decimal  十進制小數類型 = decimal
14   必須指定整數位max_digits和小數位decimal_places
15 models.EmailField  字符串類型(正則表達式郵箱) =varchar
16   對字符串進行正則表達式
17 models.FloatField  浮點類型 = double
18 models.IntegerField  整形
19 models.BigIntegerField  長整形
20   integer_field_ranges = {
21     'SmallIntegerField': (-32768, 32767),
22     'IntegerField': (-2147483648, 2147483647),
23     'BigIntegerField': (-9223372036854775808, 9223372036854775807),
24     'PositiveSmallIntegerField': (0, 32767),
25     'PositiveIntegerField': (0, 2147483647),
26   }
27 models.IPAddressField  字符串類型(ip4正則表達式)
28 models.GenericIPAddressField  字符串類型(ip4和ip6是可選的)
29   參數protocol可以是:both、ipv4、ipv6
30   驗證時,會根據設置報錯
31 models.NullBooleanField  允許為空的布爾類型
32 models.PositiveIntegerFiel  正Integer
33 models.PositiveSmallIntegerField  正smallInteger
34 models.SlugField  減號、下劃線、字母、數字
35 models.SmallIntegerField  數字
36   數據庫中的字段有:tinyint、smallint、int、bigint
37 models.TextField  字符串=longtext
38 models.TimeField  時間 HH:MM[:ss[.uuuuuu]]
39 models.URLField  字符串,地址正則表達式
40 models.BinaryField  二進制<br>23、models.ImageField   圖片<br>24、models.FilePathField 文件
more fields

    更多字段的參數:

 1 null=True
 2   數據庫中字段是否可以為空
 3 blank=True
 4   django的 Admin 中添加數據時是否可允許空值
 5 primary_key = False
 6   主鍵,對AutoField設置主鍵后,就會代替原來的自增 id 列
 7 auto_now 和 auto_now_add
 8   auto_now   自動創建---無論添加或修改,都是當前操作的時間
 9   auto_now_add  自動創建---永遠是創建時的時間
10 choices
11     GENDER_CHOICE = (
12             (u'M', u'Male'),
13             (u'F', u'Female'),
14         )
15     gender = models.CharField(max_length=2,choices = GENDER_CHOICE)
16 max_length
17 default  默認值
18 verbose_name  Admin中字段的顯示名稱
19 name|db_column  數據庫中的字段名稱
20 unique=True  不允許重復
21 db_index = True  數據庫索引
22 editable=True  在Admin里是否可編輯
23 error_messages=None  錯誤提示
24 auto_created=False  自動創建
25 help_text  在Admin中提示幫助信息
26 validators=[]
27 upload-to
more parameters

    數據庫中表與表之間的關系:

      1.一對多,models.ForeignKey(ColorDic)

      2.一對一,models.OneToOneField(OneModel)

      3.多對多,authors = models.ManyToManyField(Author)

  2、數據庫操作

    • 增加:創建實例,并調用save
    • 更新:先獲取實例,再sava 或update(指定列)
    • 刪除:先filter再delete
    • 獲取:單個:get;所有:all
    • 過濾
    • 排序:order_by
    • 返回第n-m條
    • 指定映射:values
    • 數量:count()

六、模版

  1、模版的執行

    模版的創建過程,對于模版,其實就是讀取模版(其中嵌套著模版標簽),然后將 Model 中獲取的數據插入到模版中,最后將信息返回給用戶。

  2、模版語言

    模板中也有自己的語言,該語言可以實現數據展示

轉載于:https://www.cnblogs.com/dwz1011/p/6542999.html

總結

以上是生活随笔為你收集整理的django基础(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。