国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

LNMP系列網站零基礎開發記錄(二)

2019-11-14 17:44:21
字體:
來源:轉載
供稿:網友
[目錄]
  1. 扯淡吹逼之開發前奏
  2. Django 開發環境搭建及配置
  3. web 頁面開發
  4. Django app開發
  5. Django 站點管理
  6. Python 簡易爬蟲開發
  7. Nginx&uWSGI 服務器配置
  8. ...

 二、Django 開發環境搭建及配置

 1. 開發環境

  開發環境依然是Windows,可以開發的django的IDE較多,我只使用過以下幾種

  1. Eclipse      免費IDE,需要下載pydev插件,代碼提示功能不錯
  2. Visual Studio  需要下載PTVS,結合了VS強大的編輯功能,作為C#碼農用起來比較順暢,但是很多build in的函數代碼沒有提示
  3. PyCharm      Resharper的開發商開發的Python IDE,代碼提示功能非常強大,特別適合我這種剛學python的又用慣了VS的小菜比

  So,我們毫不猶豫的選擇了PyCharm。

  Python 選擇了2.7.6,安裝后配置環境變量,同時下載setuptools,解壓之后運行

x:/setuptools-dir> easy_install.py install

  安裝完后,同時配置添加python-dir/scripts到環境變量,方便運行easy_install命令,同時還可以安裝pip,兩個都是安裝python包的利器,具體有什么差別樓主也沒細究,使用方式分別如下

x:/> easy_install package-name
x:/> pip install package-name 

  然后就可以用無腦的方式安裝后面的包了,django-1.6.5

x:/> easy_install django

  其次是安裝MySQL5.6,一路點下去就好了。

  至此,開發環境搭建完畢。由于我們使用的開發工具都有linux的版本,因此換平臺也非常容易。Let's go!

  2. 項目配置

  SETP.1  打開PyCharm,新建項目,項目名叫errordev,項目類型選擇Django PRoject,點擊OK

  SETP.2  在彈出的新建app設置里輸入app名稱errorapp,其他保持默認即可,這樣一個嶄新的django站點已經建立起來,此時SHIFT+F10即可運行站點,默認使用8000端口

  此時我們可以看見我們的項目目錄結構如下,

errordev----errorapp
--------__init.py
--------admin.py
--------models.py
--------views.py----errordev
--------__init__.py
--------settings.py
--------urls.py
--------wsgi.py----templates----manage.py

   具體哪個文件有什么用就不單獨解釋了吧,看名字就知道了,django作為有優秀的MVC框架和.NET MVC有些區別,其views.py完成了controller的功能,而templates則完成了view的功能。

  默認django的templates是放在每個app的目錄下的,這樣可以保證每個app的獨立性和復用性,但是比較分散,不利于維護,PyCharm在SETP.2的時候提供了templates folder的選項,可以改變默認路徑,使得所有的app的templates都集中在一起。這里也可以對settings.py直接進行配置

  在文件的最上面定義基本路徑(PyCharm已自動定義好了)

import osBASE_DIR = os.path.dirname(os.path.dirname(__file__))

  然后修改templates的地址,django會在優先在元組中搜尋templates

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

  在使用PyCharm時,默認的第一個app會自動注冊,如果是其它的IDE可能需要手動注冊下

INSTALLED_APPS = (    'django.contrib.admin',    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.messages',    'django.contrib.staticfiles',    'errorapp',)

  同時配置MySQL連接,django是支持多數據庫的,一個key-value對即代表了一個數據庫連接,model層使用using關鍵詞即可切換數據庫,有興趣的同學可以自行研究下。

DATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql',        'NAME': 'errordev',        'USER': 'root',        'PASSWord': '123456',        'HOST': 'localhost',        'PORT': '3306',    }}

  然后將LANGUAGE_CODE修改為中文,這里是為了使用站點管理功能的時候提供中文界面。

LANGUAGE_CODE = 'zh-cn'

  最后就是最頭疼的靜態文件配置了,google了好久,很多看似有用的方法不知道在樓主這為什么沒用,so,自力更生,根據官方文檔挨個挨個試,這里主要用了三項目 

STATIC_ROOT = os.path.join(BASE_DIR, '/media/')STATIC_URL = '/media/'STATICFILES_DIRS = (    os.path.join(BASE_DIR, "media"),)

  首先是STATIC_URL,這里主要是告訴django哪些路徑是需要映射到靜態文件的,然而具體映射到哪里,則是由STATICFILES_DIRS來定義,可以包含多個絕對路徑,django在依次搜索所有的目錄,直到完成映射。而使用這兩個配置的前提,是在INSTALLED_APPS的注冊django.contrib.staticfiles,默認是包含了這個模塊的,同時這里只保證在

DEBUG = True

的時候生效,也就是只有在DEV環境里使用默認的django開發服務器時生效?! ?/p>

[這里部署的時候會再提到]通常PRD環境里的靜態文件都配置在了Apache或者Nginx里,此時這個兩個配置其實是沒什么用的,這里就需要引入STATIC_ROOT,它的作用目前我只在PRD環境里用到了,因為將靜態文件映射的配置直接寫在Aapche或Nginx里是完全沒有問題的,但是我們在用到django的站點管理功能時,對應的靜態文件在PRD環境里就會出現找不到的問題,這里配置了STATIC_ROOT之后,我們使用shell命令(在PyCharm按住Ctrl+Alt+R,輸入collectstatic)會自動將所有的靜態文件都收集到STATIC_ROOT目錄下,包括站點里我們自己添加的靜態文件和django本身管理功能提供的靜態文件,這樣PRD環境里管理功能靜態文件找不到的問題就解決了

 PS.

  1. 表達能力較差,以后慢慢更新,同時[目錄]會隨著跟新進度隨時調整,歡迎大家拍磚!
  2. 網站鏈接會在數據積累一段時間后提供

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 万山特区| 荔浦县| 界首市| 宿州市| 大连市| 赤峰市| 册亨县| 凉山| 萝北县| 泌阳县| 五指山市| 民乐县| 信阳市| 东阿县| 长岛县| 勃利县| 苏州市| 新绛县| 曲靖市| 涟水县| 沅陵县| 喀喇| 麻城市| 西丰县| 兴文县| 南涧| 成安县| 南郑县| 抚松县| 图们市| 梅州市| 姜堰市| 香港| 西宁市| 福贡县| 固镇县| 西吉县| 余干县| 菏泽市| 翁牛特旗| 进贤县|