PyCharm入門第一步(四):建立和執行第一個Django專案

AABBbaby發表於2018-08-29

PyCharm最新版本下載

步驟4:建立和執行您的第一個Django專案

注:此功能僅在專業版中受支援。

在你開始之前

  • 您正在使用PyCharm 2016.1或更高版本。
  • 您的計算機上至少安裝了一個Python直譯器。
  • 你已經安裝了Django包。

    本教程是使用以下假設建立的:

    • Python 3.4.1。
    • Django 1.10.0或更高版本。
    • 本教程中使用的示例與Django文件中使用的示例類似 。

建立一個新專案

實際上,所有新專案都是以相同的方式建立的:通過單擊歡迎螢幕的快速啟動區域中的“ Create New Project”按鈕:

如果您已經開啟了專案,請選擇主選單中的File | New Project...來建立一個新的專案,選擇所需的專案型別(這裡是Django)。指定專案名稱和位置。Python的最佳實踐是為每個專案建立virtualenv。為此,請展開Project Interpreter:New Virtualenv Environment節點,然後選擇用於建立新虛擬環境的工具。這裡選擇Virtualenv工具,並指定用於新虛擬環境的位置和基本直譯器。如有必要,請選中下面的兩個核取方塊。接下來,展開“ More Settings”節點並指定與Django相關的設定。在“ Application name”欄位中,指定應用程式名稱(此處為polls)。

單擊Create - Django專案已準備就緒。

Exploring project structure

如上所述,基本上,存根專案已準備就緒。它包含特定於框架的檔案和目錄。當您建立任何受支援型別的專案時,也會發生同樣的情況,無論是Pyramid還是Google App Engine。現在來看看如何在專案工具視窗中看到新專案的結構。

專案工具視窗的專案檢視

預設顯示此檢視。它顯示了特定於Django的專案結構: polls和mysite目錄; 另外,你可以看到 manage.py和settings.py檔案。請注意,您在此檢視中看不到.idea目錄:

專案工具視窗的專案檔案檢視

如果出於某些原因,您希望檢視.idea目錄的內容,請選擇檢視Project Files:如您所見,此檢視顯示相同的目錄和檔案,以及.idea目錄,因為它位於專案根目錄下:

在專案檢視中看到了什麼?

  • mysitedirectory是專案的容器。在專案檢視中,它用粗體字表示。
  • manage.py:這是一個命令列實用程式,可讓您與Django專案進行互動。
  • 巢狀目錄mysite是專案的實際Python包。
  • mysite/__init__.py:這個空檔案告訴Python這個目錄應該被認為是一個Python包。
  • mysite/settings.py:此檔案包含Django專案的配置。
  • mysite/urls.py:此檔案包含Django專案URL宣告。
  • mysite/wsgi.py:此檔案定義了與WSGI相容的Web伺服器的入口點,以便為您的專案提供服務。
  • 巢狀目錄polls包含開發Django應用程式所需的所有檔案(此時,這些檔案為空):
    • polls/_init_.py告訴Python該目錄應該被視為Python包。
    • polls/models.py:在這個檔案中,將為應用程式建立模型。
    • polls/views.py:在這個檔案中,將建立檢視。
  • templates目錄現在是空的。它應該包含模板檔案。
  • 巢狀目錄migrations現在只包含包檔案 _init_.py,但將來會用於將您對模型所做的更改(新增欄位,刪除模型等)傳到資料庫模式中。

請注意,您可以根據需要建立任意數量的Django應用程式。要將應用程式新增到專案,請執行manage.py程式的startapp任務(Tools | Run manage.py task,然後在控制檯中輸入startapp)。

配置資料庫

現在,當專案存根準備就緒時,讓我們做一些微調。開啟進行編輯settings.py。為此,請在“專案”工具視窗中選擇該檔案,然後按F4。該檔案在編輯器中的own選項中開啟。指定要在應用程式中使用的資料庫。為此,找到 DATABASES變數:單擊Ctrl+F,然後在搜尋欄位中開始鍵輸入要查詢的字串。然後,在“ENGINE”行中,在dot之後新增資料庫管理系統的名稱(您可以使用註釋後指定的任何名稱,但首先我們將從sqlite3開始。)在該'NAME'行中,輸入所需資料庫的名稱,即使它尚不存在。

啟動Django伺服器

由於選擇sqlite3,因此不需要定義其他值(使用者憑據,埠和主機)。現在檢查一下設定是否正確。這可以最輕鬆地完成:只需啟動manage.py實用程式的runserver任務:按Ctrl + Alt + R,然後在manage.py控制檯中輸入任務名稱:

按照建議的連結,檢視以下頁面:

建立模型

接下來,編輯檔案models.py,並注意import語句已經存在。然後輸入以下程式碼:

實際上,你可以只複製貼上,但建議輸入 - 它可以幫助你看到功能強大的PyCharm的程式碼完成:

建立資料庫

必須為新模型建立表。為此我們將使用Ctrl + Alt + R快捷方式來呼叫manage.py控制檯。要執行的第一個命令是makemigrations polls:

因此,您已經告訴Django已經建立了兩個新模型,即Choice 和Question,並建立了一個migration:

接下來,在提示符後,輸入以下命令:

sqlmigrate polls 0001

最後,執行migrate命令在資料庫中實際建立這些表:

執行管理功能

首先,建立一個超級使用者。為此,請在manage.py控制檯中輸入createsuperuser命令,指定您的電子郵件地址和密碼:

由於決定啟用站點管理,PyCharm已經取消註釋檔案urls.py中的相應行。開啟admin.py目錄中的polls檔案進行編輯,並檢視以下已存在的程式碼:

但是,需要為管理站點啟用編輯功能。

準備執行/除錯配置

現在準備進入管理頁面。當然,很有可能執行Django伺服器,然後轉到您的瀏覽器,並在位址列中鍵入整個URL,但使用PyCharm有一種更簡單的方法:使用預先配置的Django伺服器執行配置稍作修改。要開啟此執行/除錯配置以進行編輯,請在主工具欄上單擊執行/除錯配置選擇器,然後選擇“ Edit Configurations”(或在主選單上選擇Run | Edit Configurations):

在“ Run/Dug Configuration”對話方塊中,為此執行/除錯配置命名(此處為mysite),啟用在預設瀏覽器中執行應用程式(選中“ Run browser ”核取方塊)並指定預設開啟的站點頁面(此頁為http://127.0.0.1:8000/admin/):

啟動管理站點

現在,要啟動應用程式,請按Shift + F10,或單擊主工具欄上的播放圖示開啟標準Django站點登入頁面:

登入後,將顯示管理頁面。它有一部分身份驗證和授權(組和使用者),但Polls不可用。為什麼這樣?這裡必須告訴管理員,Question物件有一個管理介面; 為此,開啟檔案 polls/admin.py進行編輯(在專案檢視中選擇並按下 F4),然後輸入以下程式碼:

再次注意程式碼完成:

重新整理頁面,看到出現問題的Polls部分:

單擊“ Add”以建立一些問題。

編輯admin.py

再次開啟以編輯檔案polls/admin.py並按如下所示進行更改:

現在檢視更改問題頁面:

Writing views

開啟polls/views.py檔案進行編輯,然後輸入以下Python程式碼:

接下來,將新檔案新增到名為urls.py的polls目錄中,並在其中輸入以下程式碼:

接下來,編輯檔案mysite/urls.py(PyCharm已經為您建立)並新增索引頁面的URL。您應該得到以下程式碼:

現在,開啟頁面127.0.0.1:8000/polls/:

接下來,新增更多檢視。再次,將以下程式碼新增到polls/views.py檔案中:

通過新增以下url()呼叫將這些新檢視連線到polls.urls模組:

如果您現在在瀏覽器中開啟相應的頁面,您將看到,例如:

建立Django模板

如您所見,這些頁面的設計在檢視中是編碼的。因此,為了使其更具可讀性,您必須編輯相應的Python程式碼。 然後讓我們將輸出的視覺化表示與Python分開 - 為此,建立模板。

請注意幫助您建立import語句的匯入助手。您注意到的第一件事是對index.html頁面的未解析引用:

PyCharm建議快速修復:如果單擊燈泡,或按 Alt+Enter,則會在模板資料夾中建立相應的模板檔案(請注意,PyCharm還會建立此模板應保留的目錄Polls):

到目前為止,該index.html檔案為空。將以下程式碼新增到其中:

注意模板檔案中的程式碼完成! 例如,當您輸入開頭{%,PyCharm adds the matching closing one %}時,將插入符號放在將來輸入的位置。 在HTML標記中,程式碼完成也可用。

這些圖示使您可以立即在檢視方法和模板之間跳轉。

使用樣式表

正如您在檢視檔案index.html中看到的那樣,對樣式表有一個引用,它沒有得到解決:

以下列方式解析此引用:

  • 建立目錄。請在“專案”檢視中選擇Python package polls,然後按Alt+Insert。

    在出現的彈出選單中,選擇“Directory”,然後指定目錄結構的名稱static/polls。

  • 接下來,在此目錄中建立樣式表。請選擇 innermost directory polls,按Alt+Insert,選擇樣式表選項 ,然後在開啟的對話方塊中輸入樣式。
  • 根據您的偏好,為建立的樣式表提供一些內容。例如,希望看到一個綠色標題的專案符號列表:

Here we are!

現在檢視可用的Polls。管理站點已經執行,訪問包含Polls列表(索引頁面)的頁面的最簡單方法是指定其URL:在瀏覽器的位址列中,而不是/ admin /,輸入/ polls/:

測試一下

現在來看看PyCharm如何幫助簡化測試應用程式。polls目錄中已有檔案tests.py。 到現在為止,這個檔案是空的。 當然,建議將新測試放在此特定檔案中。 例如,想確保Polls不是空的

要執行此測試,請在編輯器中右鍵單擊檔案tests.py的background,選擇Run,或者按Ctrl + Shift + F10。 PyCharm建議兩個選項:執行UnitTest(定義為預設測試執行器)或Django測試。測試結果顯示在“執行”工具視窗的“  Test Runner”選項中:

概要

  • 已經建立了一個Django專案和應用程式
  • The Django server launched
  • 已配置資料庫
  • 建立模型,檢視和模板
  • 該應用程式已啟動
  • 測試建立和執行

相關文章