中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Django架構說明

發布時間:2020-07-20 09:15:13 來源:網絡 閱讀:453 作者:等你的破船 欄目:編程語言

Django采用了MVT的軟件設計模式,即模型M,業務代碼V和模板T。

本文介紹了Django運行的基本配置。


一、構建簡單的MVT模型(三個文件夾,存放三種不同類型的文件):

????1、目錄:

????????????models:存放數據庫模型目錄

????????????template:存放模板文件目錄

????????????views:存放控制代碼目錄


二、Django基本說明:

????????1、安裝:把python目錄添加到系統的環境變量

pip?install?Django????????//使用python的pip命令安裝Django

????????????注意:

????????????????????1)、安裝的時候會提示報錯,提示“timeout”,原因:下載地址速度太慢,換在國內地址

?pip?install?Django?-i?https://pypi.tuna.tsinghua.edu.cn/simple

????????????????????**永久更換下載源地址:

???????????????????????????-? linux下,新建/修改/.pip/pip.conf文件,添加下列內容

????????????????????[global]????????????????????
????????????????????timeout?=?300
????????????????????index-url?=?https://pypi.tuna.tsinghua.edu.cn/simple
????????????????????[install]
????????????????????trusted-host?=?tsinghua.edu.cn

???????????????????????? ? - Windows下,在文件夾瀏覽窗口輸入%USERPROFILE%,新建\pip\pip.ini,添加下列內容:

????????????????????????????????????[global]????????????????????????????????????
????????????????????????????????????timeout?=?300
????????????????????????????????????index-url?=?https://pypi.tuna.tsinghua.edu.cn/simple
????????????????????????????????????[install]
????????????????????????????????????trusted-host=tsinghua.edu.cn


? ? ? ? ? ? ? ? ?? 2)、安裝時提示“No module named pip”

? ? ? ? ? ? ? ? ? ? ? ? 原因有二,1、沒有安裝pip,如果使用python.exe安裝,把python主目錄下的Scripts添加到環境變量

????????????????????????????????????????? 2、Windows10下,右鍵使用管理員權限運行cmd

????????????????????3)、pip下載下來的包直接存在python主目錄下的Scripts下,而Scripts目錄添加到了環境變量,所以安裝后,可以使用django這個命令確認安裝狀態


??????2、使用manager.py新建項目:把Django目錄添加到系統環境變量

????????????新建項目時,Django自動創建項目的目錄:

????????????-項目名:

????????????????-manage.py:命令行管理工具,提供了與Django交互的接口。

????????????????????常用命令,startapp name新建APP、makemagrations、migrate(Django的ORM)

????????????????-項目包名:以項目包命名的容器,主要實現配置和和管理功能。

????????????????????-__init__.py:代表python一個包,python2.0必須有,才能代表是一個包,python3可以沒有

????????????????????-settings.py:項目的配置文件,配置靜態文件地址和

????????????????????-urls.py:配置網站目錄,指定網址轉向哪個文件。

????????????????????-wsgi.py:一個 WSGI 兼容的 Web 服務器的接口,以便運行你的項目。它定義了TCP連接、HTTP原始請求和響應格式。

django-admin.exe?startproject?mysite????????//新建項目,名為mysite

????????3、啟動項目:啟動后就可以使用web瀏覽器訪問該網站

cd?mysite???????????????//進入mysite目錄
python?manage.py?runserver?127.0.0.1:8000???????//可以省略ip:port,默認本機ip和8000端口,也可指定ip:端口

????????4、創建一個APP:

???????????? ?? APP:相當于整個網站的一個模塊。比如:主站(index)\BBS\BLOG\Video\News等等,每一個都是一個獨立的頁面或功能。

python?manage.py?startapp?blog????????????//新建一個名字是blog的APP

????????????????新APP默認目錄:

????????????????-migrations包:修改數據表結構

????????????????-__init__:代表APP是個包。。。

????????????????-apps.py:配置當前App

????????????????-models.py:ORM,寫指定的類,通過命令可以創建數據庫結構。

????????????????-tests.py:單元測試

????????????????-views.py:業務代碼,存放后臺處理的代碼。

#配置urls.py指定網址訪問的頁面。APP要導入到views文件
import?blog.views
#在urlpatterns列表添加下面值
url(r'^blog',blog.views.login),


????????5、templates和static文件夾:新建項目后需要創建這兩個文件夾。

????????????templates:存放.html類型的模板文件,在urls.py中可以更改設置

????????????static:存放靜態文件,比如JS/jQuery/CSS類型的文件,在settings.py中設置才能正常被使用。

????????????????????????根據個人喜好設置,可以在每個APP下設置,也可在manage.py同級目錄設定通用的static,

????????????以上兩個文件夾創建后的設置:

#增加settings.py文件templates的設置:
TEMPLATES?=?['DIRS':?[os.path.join(BASE_DIR,'templates')]]???//修改dirs的值,指定為主目錄下的templates文件夾

#增加settings.py的static目錄的設置
STATICFILES_DIRS=(os.path.join(BASE_DIR,'static'),)

? ? ? ? 6、幾個錯誤:

????????????1)、form請求錯誤,原因:form里的action帶/,django里的urls地址路由沒帶/,只在django框架里的錯誤,

????????????解決方法,兩處/都刪掉或都加/


????????????2)、運行csrf錯誤,注釋掉csrf行,以后會對csrf進行設置?


????????????3)、指定全局static目錄后,無法加載CSS樣式,提示Resource interpreted as Stylesheet but transferred with MIME type application/x-css

#html加載的CSS文件
<link?rel='style'?texttype='text/css'?href='/static/css.css'/>
#解決方法:在html首行加
{%load?static%}
#如果不想每次在模版中加載靜態文件都使用load加載static標簽,那么可以在settings.py中的TEMPLATES/OPTIONS添加'builtins':['django.templatetags.static'],這樣以后在模版中就可以直接使用static標簽,而不用手動的load了。
'django.contrib.auth.middleware.AuthenticationMiddleware',



三、總結一個完整的HTTP請求過程:

????????Django架構說明







向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

德州市| 华坪县| 长汀县| 都兰县| 松溪县| 方正县| 遵义市| 嘉善县| 张掖市| 涡阳县| 安龙县| 绥芬河市| 交口县| 股票| 府谷县| 清水河县| 揭阳市| 赤峰市| 屏南县| 上林县| 宾川县| 措美县| 镇安县| 都江堰市| 隆林| 固原市| 纳雍县| 湛江市| 罗山县| 如皋市| 长白| 高州市| 天镇县| 凉山| 怀化市| 兰西县| 延安市| 锡林郭勒盟| 周宁县| 金昌市| 开封县|