一、創建Django項目
1、命令行創建(startproject):
windows 下打開命令提示符(win + R,輸入 cmd) ,在 cmd 上進行操作:
① 用cd命令進入準備建立Django項目的文件夾
② 輸入如下命令:django-admin startproject project-name
2、使用pycharm創建:
① 第一步:選中Django
② 第二步:選擇項目創建路徑,默認項目目錄名為untitled,改成項目名稱即可。
③ 第三步:選擇項目的python環境,如沒有列舉出我們需要創建項目的python環境,可進行第四步自行添加python環境。
④第四步(如需要):點擊齒輪按鈕,選擇Add Local,選擇相應的環境下的python.exe文件(虛擬Python環境中python.exe文件位于Script文件夾下)。
⑤ 第五步(如需要):從上而下分別是:選擇模板語言(Django和Jinja2兩種),定義模板文件夾名稱,app名稱。如果在Application name里填寫上了名稱,項目創建時會自動創建一個app。
二、Django項目目錄
1、外層DjangoStudy文件夾:整個項目的文件夾
2、內層DjangoStudy文件夾:自動生成,用于存放項目的初始文件的目錄。
? ? ? 2.1 __init__.py 文件定義了包的屬性和方法。其實它可以什么也不定義;可以只是一個空文件,但是必須存在。如果__init__.py 不存在,這個目錄就僅僅是一個目錄,而不是一個包,它就不能被導入或者包含其它的模塊和嵌套包。
? ? ? 2.2 settings.py文件:Django 的全局配置文件,比如 DEBUG 的開關,靜態文件的位置等。
? ? ? 2.3 urls.py文件:網址入口,關聯到對應的views.py中的一個函數(或者generic類),訪問網址就對應一個函數。
? ? ? 2.4 wsgi.py文件:Django啟動的wsgi文件。
3、templates文件夾:用于存放html模板文件。
4、manage.py文件:Django的命令文件,用于啟動Django命令。
三、Django設置
1、 獲取項目文件路徑
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
BASE_DIR獲取的是項目主文件夾的絕對路徑。
2、DEBUG開關
DEBUG =True
? ? ? ?當設置DEBUG為True時,運行項目時可以在網站上顯示錯誤信息,一般開發時將DEBUG開關打開,部署時將DEBUG開關關閉,即將DEBUG設置為False。
3、ALLOWED_HOSTS限定請求地址
? ? ? ALLOWED_HOSTS是為了限定請求中的host值,以防止黑客構造包來發送請求.只有在列表中的host才能訪問.強烈建議不要使用*通配符去配置,另外當DEBUG設置為False的時候必須配置這個配置.否則會拋出異常.配置模板如下:
ALLOWED_HOSTS = [? ? '.1.com', '2.com.',? ]
這樣就只允許1.com和2.com中的IP地址訪問,如需要設置允許所有都可以訪問,可以設置成如下:
ALLOWED_HOSTS = [ '*' ]
4、注冊APP
創建app后需要將app的名稱加入到INSTALLED_APPS中,這樣Django才能識別出相應的app
INSTALLED_APPS = [
? ? ?'django.contrib.admin',
? ? ?'django.contrib.auth',
? ? ?'django.contrib.contenttypes',
? ? ?'django.contrib.sessions',
? ? 'django.contrib.messages',
? ? 'django.contrib.staticfiles',
? ? 'test'
]
5、設置Templates目錄
新建項目后,需要將templates目錄加入到setting中的TEMPLATES中DIRS選項中,Djang就可以自動識別出templates中的模板文件
一般采用os.path.join(BASE_DIR,'templates')這種方式。
6、數據庫配置
'ENGINE':'django.db.backends.mysql',? ? ?#數據庫引擎
'NAME':'djangotest',#要連接的數據庫名稱
'USER':'root',#進入數據的用戶名
'PASSWORD':'******',#進入數據庫的密碼
'HOST':'127.0.0.1',#數據庫IP地址
'PORT':'3306',#數據庫使用的端口號
運行時如提示沒有安裝mysql驅動,可以去下面的網址下載:
https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python
7、配置中文
LANGUAGE_CODE ='zh-Hans'
8、配置成中國時區
TIME_ZONE ='Asia/Shanghai'
9、配置引用靜態文件
Django中靜態文件(css、js、img等文件)一般存放在項目目錄下的static文件夾中,需要在setting中做出相應的配置,Django才能自動識別到。
STATICFILES_DIRS = [
? ? ? os.path.join(BASE_DIR,'static'),
]
10、添加搜索目錄即sources Root目錄
① 導入sys包:
import sys
②設置目錄
使用sys.path下面的insert函數,0表示在第一個位置插入,我們希望優先搜索我們設置的目錄
sys.path.insert(0,os.path.join(BASE_DIR,'apps'))