如何使用Python進行網站開發?

2021-01-11 一起學python

引言

當今的網站實際上都是富應用程式,就像成熟的桌面應用程式一樣。Python提供了一組開發Web應用程式的卓越工具。在本節中,我們將使用Django來開發一個個人記錄博客,其實通俗而言,就是一個在線日誌的系統,讓我們能夠記錄所學習的有關特定主題的知識。

我們將為這個項目指定規範,然後為應用程式使用的數據定義模型。我們將使用Django的管理系統來輸入一些初始數據,再編寫視圖和模板,讓Django能夠為我們的網站創建網頁。

Django是一個Web框架——一套用於幫助開發交互式網站的工具。Django能夠響應網頁請求,還能讓你更輕鬆地讀寫資料庫、管理用戶等。

建立Django項目

建立Django項目首先需要確保我們按照好了Django,我們在Pycharm中打開虛擬環境的終端,然後輸入:pip install Django==1.11即可進行安裝:

依然在活動終端中,執行如下命令來新建一個項目:

第一行的命令讓我們新建一個名為learning_log的項目。這個命令末尾的句點讓新項目使用合適的目錄結構,這樣開發完成後可輕鬆地將應用程式部署到伺服器上。(注意:千萬不要忘記這個句點,否則部署應用程式時會遭遇一些配置問題。如果忘記這個句點就將創建的文件和文件夾全部刪除,再重新運行這個命令。)

然後我們運行了命令ls(在windows系統中應該為dir),結果表明Django新建了一個名為learning_log的目錄。它還創建了一個名為manage.py的文件,這是一個簡單的程序,它接受命令並將其交給Django的相關部分去運行。我們將使用這些命令來管理諸如使用資料庫和運行伺服器等任務。

目錄learning_log中包含4個文件,其中最重要的是settings.py、urls.py和wsgi.py。文件settings.py指定Django如何與你的系統進行交互以及如何管理項目。在開發項目的過程中,我們將修改其中一些設置,並添加一些設置。文件urls.py告訴Django應創建哪些網頁來響應瀏覽器請求。文件wsgi.py幫助Django提供它創建的文件,這個文件名是web server gateway interface(Web伺服器網關接口)的首字母縮寫。

創建資料庫

Django將大部分與項目相關的信息都存儲在資料庫中,因此我們需要創建一個供Django使用的資料庫。為了給我們的個人筆記創建資料庫,請在處於活動虛擬環境中的情況下執行下面的命令:

如果沒有執行成功,出現如下所示的錯誤時,大家也不要緊張,這是由於Django與Python3的兼容性的問題導致的,只需要刪除出錯語句中的最後一個逗號即可。(如果報錯為:SyntaxError: Generator expression must be parenthesized,可使用上述方法。)

我們將修改資料庫稱為遷移資料庫。首次執行命令migrate時,將讓Django確保資料庫與項目的當前狀態匹配。在使用SQLite的新項目中首次執行這個命令時,Django將新建一個資料庫。Django將指出它將創建必要的資料庫表,用於存儲我們將在這個項目中使用的信息,再確保資料庫結構與當前代碼匹配。

接著我們運行了命令ls,其輸出表明Django又創建了一個文件——db.sqite3。SQLite是一種使用單個文件的資料庫,是編寫簡單應用程式的理想選擇,因為它讓我們不用太關注資料庫的管理問題。

查看項目

下面我們來核實Django是否正確創建了項目。為此,可執行命令runserver,如下所示:

Django啟動一個伺服器,讓你能夠查看系統中的項目,了解它們的工作情況。當你在瀏覽器中輸入URL以請求網頁時,該Django伺服器將進行響應,生成合適的網頁,並將其發送給瀏覽器。接著我們點開上面的連接,當看到如下所示的頁面就證明我們的項目已經可以正式啟動啦:

相關焦點

  • Python開發簡單爬蟲【學習資料總結】
    使用HTTPCookieProcessor; 需要代理才能訪問的網頁使用ProxyHandler; 需要HTTPS加密訪問的網站使用HTTPSHandler; 有些URL存在相互自動跳轉的關係使用
  • 成都學習Python開發哪家好
    如何選擇成都python培訓機構? python程式語言語法清晰、乾淨、易讀、易維護、代碼量小、可讀性強。當團隊合作開發時,閱讀別人的代碼將是非常迅速和高效的。通俗說來就是「寫起來快、看起來明白!」所以近年來,python開發非常流行。
  • 教你如何使用Python的27萬代碼庫
    在這篇文章中,將討論如何通過PIP命令訪問和利用PyPI。怎麼用?下面乾貨PyPI是Python開發人員的默認軟體存儲庫,用於存儲創建的Python程式語言軟體開發人員和程式設計師,以用於公開和共享其軟體。與PyPI一起,通過PyPi-Install庫,您只需使用一個函數調用就可以將Python代碼上傳到PyPI。
  • Python,爬蟲開發的不二選擇
    爬蟲指的是:向網站發起請求,獲取資源後分析並提取有用數據的程序。如今,人類社會已經進入了大數據時代,如何高效的獲取數據,已經成了各個網際網路公司的技術研發重點,掌握爬蟲技術已經成為了大數據公司技術人員不可或缺的一項技能。開發爬蟲使用的語言,一般有C++、Java或者Python等,這些都是面向對象的程式語言。
  • 武漢Python Web全棧開發工程師修煉價格_web前端開發培訓哪家好...
    【課程介紹】課程以python語言為主導,進行web服務相關的全棧開發,包含後端伺服器開發,部署,監控;web前端開發,前後端不分離模板模式開發,前後端分離,單獨前端部署方案。生命周期介紹基於flask jinja2模板引擎使用vue的方法(前後端不分離,但html頁面使用)前後端分離vue使用方法(使用vue-cli腳手架)nginx 部署 vue項目【項目練習】日記網站開發,基於前後端分離的開發模式(flask +vue),該項目主要根據學習的知識點加以鞏固,並講解一些基礎課程中未提及的知識點
  • 如何使用 Python 構建 PC 通信?
    本文就來分享下如何使用Python構建PC與PLC的通信,也算展示一把Python在工控領域的風採。Python對其進行了封裝,具體可以參見:https://github.com/gijzelaerr/python-snap7。
  • 如何自學成 Python 大神?這裡有些建議
    他兩年前開始使用 Java 進行編程,後來發現自己需要一種具有更高可讀性且能夠快速實現原型開發的程式語言,不久之後, Python 就成為他最喜歡的語言。 他對數據科學和機器學習領域非常感興趣,特別是對文本的情感分析。此外,他對人臉和物體識別也具有非常豐富的經驗。
  • windows上python開發環境的搭建
    對於程序開發而言,需要的就是一個良好的開發環境。對於C,C++, java等靜態性語言而言,需要通過IDE(集成開發環境)來便利開發過程;對於perl, python這種動態性語言而言,其開發環境的搭建就顯得簡單多了,只需要安裝好對應的解釋器,以及選擇一個順手的編輯器即可。
  • 用Python進行Web爬取數據
    我們無法在數據科學項目中獲得可以直接使用的Excel或.csv文件,對嗎?那麼,如何應對數據匱乏的問題呢?實現此目的最有效,最簡單的方法之一就是通過網頁抓取。我個人發現網絡抓取是一種非常有用的技術,可以從多個網站收集數據。如今,某些網站還為你可能希望使用的許多不同類型的數據提供API,例如Tweets或LinkedIn帖子。
  • Python視頻教程網課編程零基礎入門數據分析網絡爬蟲全套Python...
    Mov 1-2在線編譯工具weblde使用之指南.mov 2-1如何在列表,字典,集合中根據條件.MOV 2-2 3 4命名 統計 字典.mov 2-5公共鍵.mov 2-6 如何讓字典保持有序.mov 2-7歷史記錄.mov 3-1 2迭代器.mov 3-3如何使用生成器函數實現迭代對象
  • 使用Python進行VNC身份驗證檢查
    在本文中將描述了一個小的python腳本,該腳本可用於確定VNC伺服器上使用的身份驗證類型。它使用Scapy數據包處理程序來執行所有網絡數據傳輸和檢索。該程序可能並不完美,但是經過有限的測試,它似乎可以正常運行。為了了解程序的工作原理,我需要解釋VNC客戶端如何與VNC伺服器交互。RFB協議用於建立與伺服器的連接。
  • 怎樣使用python進行PLS-DA建模
    PLS-DA是計算化學中一種常見的分類算法,那麼它在python中如何實現呢?這裡我們使用scikit-learn包首先,導入需要的package:import pandas as pdfrom sklearn.datasets import load_irisfrom sklearn.metrics import accuracy_scorefrom sklearn.cross_decomposition import PLSRegression
  • 使用Python進行K均值聚類
    有時我們只是想知道我們的數據是如何組織起來的這樣我們就能知道數據是如何組織起來的。聚類意味著對一組對象進行分組。K-means聚類是無監督學習的一部分,我們使用的是未標記的數據集,這個算法會自動為我們將數據分組成聚類。它是目前最流行、應用最廣泛的聚類算法之一。它用於各種應用程式,例如市場細分,圖像細分等。
  • 如何使用python語言代碼實現判斷是否為回文
    工具Visual Studio 2019python運行環境技術python回文回文,是按照中心對稱,從左到右或從右到左,字符串都一樣的。如果想要python語言代碼實現回文判斷,若為回文,列印回文,否則列印不是回文。
  • 代碼詳解:Python虛擬環境的原理及使用
    本指南先介紹虛擬環境的基礎知識以及使用方法,然後再深入介紹虛擬環境背後的工作原理。注意:本指南在macOS Mojave系統上使用最新版本的Python 3.7.x。目錄· 為什麼使用虛擬環境?· 什麼是虛擬環境?· 使用虛擬環境· 管理環境· 虛擬環境如何運行?1.
  • python開發爬蟲有門檻嗎?
    如果你不是科班出身,沒有開發經驗,初次接觸開發爬蟲這檔子事兒,相信這篇文章能幫到你。python開發爬蟲肯定是有門檻的。儘管python很簡單,上手不難,但是開發起來你會發現,開發爬蟲不只是單單會python就可以了,你還得需要下列這些技能。
  • 如何快速簡單的安裝opencv-python
    python3.6.8下載將pip源更換到國內鏡像用pip管理工具安裝庫文件時,默認使用國外的源文件,因此在國內的下載速度會比較慢,可能只有50KB/s。:按下Win+R ,輸入cmd 回車 ,輸入pip install opencv-contrib-python回車,開始下載安裝,安裝完成後進行測試一下。
  • Abaqus二次開發相關視頻教程-使用Python語言-VUMAT用戶GUI交互...
    軟體使用過程中,為了簡化重複勞動的工作量,經常會用到二次開發,本教程介紹基於Python語音的ABAQUS二次開發。Python語言簡單易學,很容易上手。ABAQUS在求解核心(Solver/ Kernel)和圖形用戶界面(GUI)之間使用的交互語言天然就是python,因此使用Python進行ABAQUS二次開發是十分自然的選擇(當然也可以用C++,但是鑑於Python所擁有的各類開源庫函數的優勢,Python應當是二次開發的首選)。
  • 西安Python測試開發全棧核心課程
    1.有系統全面體系化的課程並且有專業的老師指導和充分的實際項目實戰訓練2.結合工作場景進行實際工作操練和實踐3.詳細的手把手的指導,掌握整個測試工作流程的全部實踐過程4.在工作中遇到問題應該如何溝通,如何協調資源也非常重要我們Atstudy網校此次推出的測試開發全棧課程分為六大系列課程:課程一:Python零基礎入門到精通
  • 廣州Python測試培訓
    HTTP協議、JSCON、WEB前端開發技術、 HTML5、CSS、 Javascript、 JQuery庫等等,課程採用面授的形式進行,不僅有Python開發必備理論知識的傳道授業,還有針對學員實操技術提升的實戰項目,真實採用企業開發案例 ,應用在教學中,學生不僅僅要想清楚開發的理論依據,更重要的是把心中隱約的想法經過雙手,變成現實。