如何簡單便捷的搭建一個網站 - 基於Django

 

注:本文已遷移至CSDN,後續的更新也會在CSDN。php

 

http://blog.csdn.net/houchaoqun_xmu/article/details/53693347css

 

http://blog.csdn.net/houchaoqun_xmuhtml

 

1、所需工具以及相關環境python

 1. 系統:win7,win8.1,win10(親測可用 - 本文爲win7,64位)linux

 2. 本文使用的版本是:git

  1)python-2.7.11【百度雲盤分享:http://pan.baidu.com/s/1c25M2ty程序員

  2)Django-1.6.11【百度雲盤分享:http://pan.baidu.com/s/1nvbbXWHshell

 

2、搭建開發環境(注:如下安裝過程當中涉及到的路徑,根據用戶自身習慣而定)數據庫

 1. 安裝python:下載安裝包(如:python-2.7.11.msi),而後你只須要使用默認的設置,一直點擊「下一步」直到安裝完成便可。django

  -- 配置環境變量:C:\My_softwares\Python27(根據本身安裝的路徑),如圖1.1所示。

  -- 檢測是否安裝成功:【ctrl + R】 --> 輸入【powershell(或者cmd)】--> 輸入【python】 --> 結果如圖1.2所示。

       

             圖1.1 配置環境變量                               圖1.2 python安裝並配置成功

 2. 安裝Django:

  1)下載django安裝包,如(Django-1.6.11)

    -- 解壓並和Python安裝目錄放在同一個根目錄(放在python目錄下也行,如,C:\My_softwares\Python27 --> C:\My_softwares\Python27\Django-1.6.11)

    -- 經過【powershell】(或者cmd)進入Django 目錄,執行【python setup.py install】,而後開始安裝,Django將要被安裝到Python的Lib下site-packages.

  2)配置環境變量(操做與配置python的環境變量相似):

    -- C:\My_softwares\Python27\Lib\site-packages\django

    -- C:\My_softwares\Python27\Scripts(注:django安裝完成後,該目標下生成【django-admin.py】用於後續網站的創建

    -- 添加完成後就能夠使用【django-admin.py】提供的命令建立新工程了。

  3)檢驗django是否搭建完成:

    --【ctrl + R】 --> 輸入【powershell(或者cmd)】--> 輸入【python】

    -- 輸入【import django】--> 輸入【django.VERSION】--> 是否顯示對應的版本(如:1, 6, 11, 'final', 0),如圖1-3所示. 

圖1-3 django安裝並配置成功

 3. PowerShell簡介:Windows PowerShell 是一種命令行外殼程序和腳本環境,使命令行用戶(如,相似linux的【ls】命令,可顯示當前目錄下包含的文件)和腳本編寫者能夠利用。

  1)Windows PowerShell 入門主要面向以前沒有 Windows PowerShell 背景知識的 IT 專業人員、程序員和高級用戶。

  2)使用方法:【ctrl + R】 --> 輸入【powershell】便可。

  3)使用【PowerShell】進行快速編輯,如圖1-4所示:

圖1-4 開啓powershell的快速編輯模式

3、建立第一個網站(在環境搭建完成的條件下建立項目,本文使用【powershll】進行命令行的交互)

 1. 將【C:\My_softwares\Python27\Scripts】處的文件「django-admin.py」複製到目錄A(目錄A表示你打算在目錄A下建立網站項目,此處目錄A爲:D:\16_Grade_XMU\Code_XMU\TuringClass_OnLine)

 2. 經過【powershll】進入目錄A,輸入django建立項目的語句,具體命令以下:(具體可參考:http://www.runoob.com/django/django-first-app.html)

    1)【ctrl + R】-->【powershell】打開命令交互窗口 --> 輸入【python .\django-admin.py startproject TuringClass】TuringClass爲項目名,根據用戶而定。

    2)建立完成後咱們能夠查看下項目的目錄結構,如圖2-1所示:

圖2-1 初始建立的項目結構

    3)文件說明以下:

  • manage.py一個實用的命令行工具,可以讓你以各類方式與該 Django 項目進行交互。
  • __init__.py一個空文件,告訴 Python 該目錄是一個 Python 包。
  • settings.py該 Django 項目的設置/配置。
  • urls.py該 Django 項目的 URL 聲明; 一份由 Django 驅動的網站"目錄"。
  • wsgi.py一個 WSGI 兼容的 Web 服務器的入口,以便運行你的項目。

 3. 至此,咱們已經能夠經過上述生產的「.\manage.py」,啓動本地服務器,具體命令以下:  

  1)輸入命令【python .\manage.py runserver 127.0.0.1:8000】,成功後以下圖2-2所示。

  2)其中,127.0.0.1爲本地服務器IP,8000爲端口號。若是不指明端口號,默認爲8000端口,命令語句能夠是【python .\manage.py runserver】,默認爲【127.0.0.1:8000】

  3)打開瀏覽器,輸入【http://127.0.0.1:8000/】,便可打開網頁,如圖2-3所示.

圖2-2 運行本地IP成功

                                 圖2-3(注:項目中若是代碼有改動,服務器會自動監測代碼的改動並自動從新載入,因此若是你已經啓動了服務器則不需手動重啓)

 4. 建立app並配置相應的文件(app根據用戶的功能模塊去劃分):

  1)在目錄A(此處爲D:\16_Grade_XMU\Code_XMU\TuringClass_OnLine)下,輸入命令【python .\manage.py startapp app_TuringClass】建立一個APP,其中app_TuringClass爲app的名字,根據用戶習慣而定。

    -- Note1:每次建立完 app 後,須要在project目錄下的【setting.py】文件裏的 INSTALLED_APPS 添加 app_Name (本文爲【app_TuringClass】)!

  2)在 app_TuringClass 目錄下,手動建立一個【urls.py】,再由項目目錄(此處爲D:\16_Grade_XMU\Code_XMU\TuringClass_OnLine\TuringClass)下的urls.py包含全部app中的urls.py,原理如圖2-4所示(根據本人理解)。

圖2-4 urls.py

  3)建立templates文件夾,正常狀況下,用戶把全部html文件都放在該目錄下,具體操做以下:

   A)在項目根目錄下建立文件夾【templates】

   B)在project目錄下的【setting.py】文件配置文件,如圖2-5所示:

圖2-5:配置templates

  4)在templates文件夾下建立html,如【Home_TuringClass.html】,編寫代碼。此處須要理解下視圖(view.py)和URL配置,以下:

    A)每一個app_name目錄下都有一個【view.py】,負責網站後臺功能的實現,數據的管理和交互,經過ulrs.py調用views.py對應的函數,再由該函數返回指定的html(即界面)。

      -- 如: url(r'^$', 'app_TuringClass.views.Home_TuringClass') ,調用app_TuringClass目錄下的 Home_TuringClass 函數。

      -- 如:【 return render(request, 'Home_TuringClass.html', context) 】,返回Home_TuringClass.html並顯示給用戶。

    B)urls.py配置的理解也很重要,如圖2-6爲Django建立網站的運行機制(本身整理,有錯還望提出,本人會加以理解和改進),具體參見【http://django-chinese-docs-16.readthedocs.io/en/latest/

圖2-6 django運行機制

  5)html文件內如何使用後臺(views.py)的變量:效果如圖2-7所示

    A)views.py:

      -- 給字典context變量賦值:context['string'] = "Hello Turing Class from view.py!"

      -- 返回context變量:return render(request, 'Home_TuringClass.html', context)

    B)html,如圖2-8所示:

      -- 使用後臺返回的string變量:{{string}}  便可顯示【Hello Turing Class from view.py!】

                                                  

                            圖2-7 顯示給用戶的界面                                            圖2-8 Home_TuringClass.html

 5. 建立static文件夾(與templates同一層目錄),將項目涉及到的css、js等文件都放在static目錄下進行管理:

   1)配置文件:在project目錄下的【setting.py】文件進行配置,如圖2-9所示:

圖2-9 配置static

 6. 接下來就是根據項目的需求,進行模塊劃分,進一步開發整個網站。

------------------------------------------------------------ 總結 ------------------------------------------------------------

1. 安裝python和django並配置環境變量;

2. 將 django-admin.py 文件複製到目錄A(A表示你想在該目錄下建立項目);

3. 輸入【 python django-admin.py startproject project_name 】建立項目;

4. 輸入【 python .\manage.py runserver 127.0.0.1:8000 】運行本地IP,跑起項目,此時便可選擇瀏覽器,輸入網址 「http://127.0.0.1:8000/」 打開網頁;

5. 輸入【 python .\manage.py startapp appName 】建立app項目,並進行以下配置:

  1)手動添加urls.py;

  2)配置【setting.py】,包括appName、templates、static等(後續的數據庫類型也是在這裏配置);

  3)理解每一個appName下的urls.py和projectName目錄下的urls.py的關係,比進行配置;

  4)編寫appName目錄下的【views.py】,返回變量和具體網頁;

6. 輸入【 python .\manage.py sycndb 】建立數據庫,本文未詳細說起這部份內容,下次爭取更深入的理解後,再整理。

-------------------------------------------------------------------------------------------------------------------------------

4、相關網站推薦

 1. Django、Python(菜鳥教程):http://www.runoob.com/

  -- django中文文檔:http://django-chinese-docs-16.readthedocs.io/en/latest/

 2. Sublime:

  1)官網(下載):http://www.sublimetext.com/

  2)Package Control:http://jingyan.baidu.com/article/925f8cb817fd49c0dce05653.html

  3)Ement: http://www.cnblogs.com/tinyphp/p/3217457.html

  4)全棧開發必備的10款Sublime Text插件:http://www.php100.com/html/it/focus/2014/1128/7935.html ;

  -- Note1:在安裝了「Package Control」的條件下,要下載插件時,先打開console(ctrl+shift+p)輸入install package,再輸入插件名。

3. Git

  1)碼雲:https://git.oschina.net/

  2)GIT - 安裝包:https://git-scm.com/download/win ;

  3)TortoiseGit - 安裝包:https://tortoisegit.org/download/

 

------------------------------------------------------------------------------------------------------------------------------

本文根據本人開發經驗進行總結和整理,若有發現不妥的地方,還望指正,互相學習!

相關文章
相關標籤/搜索