Django學(xué)習(xí)筆記

一、創(chuàng)建Django項目

1、命令行創(chuàng)建(startproject):

windows 下打開命令提示符(win + R,輸入 cmd) ,在 cmd 上進行操作:

① 用cd命令進入準備建立Django項目的文件夾

② 輸入如下命令:django-admin startproject project-name

2、使用pycharm創(chuàng)建:


① 第一步:選中Django

② 第二步:選擇項目創(chuàng)建路徑,默認項目目錄名為untitled,改成項目名稱即可。

③ 第三步:選擇項目的python環(huán)境,如沒有列舉出我們需要創(chuàng)建項目的python環(huán)境,可進行第四步自行添加python環(huán)境。

④第四步(如需要):點擊齒輪按鈕,選擇Add Local,選擇相應(yīng)的環(huán)境下的python.exe文件(虛擬Python環(huán)境中python.exe文件位于Script文件夾下)。


⑤ 第五步(如需要):從上而下分別是:選擇模板語言(Django和Jinja2兩種),定義模板文件夾名稱,app名稱。如果在Application name里填寫上了名稱,項目創(chuàng)建時會自動創(chuàng)建一個app。

二、Django項目目錄


1、外層DjangoStudy文件夾:整個項目的文件夾

2、內(nèi)層DjangoStudy文件夾:自動生成,用于存放項目的初始文件的目錄。

? ? ? 2.1 __init__.py 文件定義了包的屬性和方法。其實它可以什么也不定義;可以只是一個空文件,但是必須存在。如果__init__.py 不存在,這個目錄就僅僅是一個目錄,而不是一個包,它就不能被導(dǎo)入或者包含其它的模塊和嵌套包。

? ? ? 2.2 settings.py文件:Django 的全局配置文件,比如 DEBUG 的開關(guān),靜態(tài)文件的位置等。

? ? ? 2.3 urls.py文件:網(wǎng)址入口,關(guān)聯(lián)到對應(yīng)的views.py中的一個函數(shù)(或者generic類),訪問網(wǎng)址就對應(yīng)一個函數(shù)。

? ? ? 2.4 wsgi.py文件:Django啟動的wsgi文件。

3、templates文件夾:用于存放html模板文件。

4、manage.py文件:Django的命令文件,用于啟動Django命令。

三、Django設(shè)置

1、 獲取項目文件路徑

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

BASE_DIR獲取的是項目主文件夾的絕對路徑。

2、DEBUG開關(guān)

DEBUG =True

? ? ? ?當設(shè)置DEBUG為True時,運行項目時可以在網(wǎng)站上顯示錯誤信息,一般開發(fā)時將DEBUG開關(guān)打開,部署時將DEBUG開關(guān)關(guān)閉,即將DEBUG設(shè)置為False。

3、ALLOWED_HOSTS限定請求地址

? ? ? ALLOWED_HOSTS是為了限定請求中的host值,以防止黑客構(gòu)造包來發(fā)送請求.只有在列表中的host才能訪問.強烈建議不要使用*通配符去配置,另外當DEBUG設(shè)置為False的時候必須配置這個配置.否則會拋出異常.配置模板如下:

ALLOWED_HOSTS = [? ? '.1.com', '2.com.',? ]

這樣就只允許1.com和2.com中的IP地址訪問,如需要設(shè)置允許所有都可以訪問,可以設(shè)置成如下:

ALLOWED_HOSTS = [ '*' ]

4、注冊APP

創(chuàng)建app后需要將app的名稱加入到INSTALLED_APPS中,這樣Django才能識別出相應(yīng)的app

INSTALLED_APPS = [

? ? ?'django.contrib.admin',

? ? ?'django.contrib.auth',

? ? ?'django.contrib.contenttypes',

? ? ?'django.contrib.sessions',

? ? 'django.contrib.messages',

? ? 'django.contrib.staticfiles',

? ? 'test'

]

5、設(shè)置Templates目錄

新建項目后,需要將templates目錄加入到setting中的TEMPLATES中DIRS選項中,Djang就可以自動識別出templates中的模板文件


一般采用os.path.join(BASE_DIR,'templates')這種方式。

6、數(shù)據(jù)庫配置


'ENGINE':'django.db.backends.mysql',? ? ?#數(shù)據(jù)庫引擎

'NAME':'djangotest',#要連接的數(shù)據(jù)庫名稱

'USER':'root',#進入數(shù)據(jù)的用戶名

'PASSWORD':'******',#進入數(shù)據(jù)庫的密碼

'HOST':'127.0.0.1',#數(shù)據(jù)庫IP地址

'PORT':'3306',#數(shù)據(jù)庫使用的端口號

運行時如提示沒有安裝mysql驅(qū)動,可以去下面的網(wǎng)址下載:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python

7、配置中文

LANGUAGE_CODE ='zh-Hans'

8、配置成中國時區(qū)

TIME_ZONE ='Asia/Shanghai'

9、配置引用靜態(tài)文件

Django中靜態(tài)文件(css、js、img等文件)一般存放在項目目錄下的static文件夾中,需要在setting中做出相應(yīng)的配置,Django才能自動識別到。

STATICFILES_DIRS = [

? ? ? os.path.join(BASE_DIR,'static'),

]

10、添加搜索目錄即sources Root目錄

① 導(dǎo)入sys包:

import sys

②設(shè)置目錄

使用sys.path下面的insert函數(shù),0表示在第一個位置插入,我們希望優(yōu)先搜索我們設(shè)置的目錄

sys.path.insert(0,os.path.join(BASE_DIR,'apps'))

四、Django模型

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容