Django搭建個人博客之製作app並配置相關環境

創建APP

Django中的一個app代表一個功能模塊。開發者可以將不同功能的模塊放在不同的app中, 方便代碼的複用。app就是項目的基石,因此開發博客的第一步就是創建新的app,用來實現跟文章相關的功能模塊。

打開命令行,進入項目所在的目錄:(注意Django的操作必須在虛擬環境下進行)

E:\>cd django_project
E:\django_project>

進入虛擬環境(忘記進入venv方法的看這裏: 在Windows中搭建Django的開發環境):

 E:\django_project> env\Scripts\activate.bat
(env) E:\>

看到盤符前有(env)標識則表示進入虛擬環境成功。
輸入python manage.py startapp article指令,創建名爲articleapp

(env) E:\django_project\my_blog>python manage.py startapp article

查看一下my_blog文件夾,應該看到這樣的結構:

│  db.sqlite3
│  manage.py
│
├─article
│  │  admin.py
│  │  apps.py
│  │  models.py
│  │  tests.py
│  │  views.py
│  │  __init__.py
│  │
│  └─migrations
│        └─ __init__.py
│
└─my_blog
    │  settings.py
    │  urls.py
    │  wsgi.py
    └─ __init__.py

項目結構分解如下:
根目錄my_blog下有兩個文件:db.sqlite3是一個輕量級的數據庫文件,用來存儲項目產生的數據,比如博客文章;manage.py是項目執行命令的入口,比如runserver。

目錄article是剛創建出來的app,用來放置博客文章相關的代碼:後臺管理文件admin.py,數據模型文件models.py,視圖文件views.py,存放數據遷移文件的目錄migrations

根目錄下還有一個my_blog目錄,其中的settings.py包含項目的配置參數,urls.py則是項目的根路由文件。

目前你需要了解的就這麼多,後面的章節都會用到。剩下還有一些沒講到的文件可以暫時不管它,碰到時再查資料。

註冊APP(settings)

接着我們需要修改項目配置文件,“告訴”Django現在有article這麼一個app了。

打開my_blog目錄的settings.py,找到INSTALLED_APPS寫入如下代碼:

my_blog/settings.py

INSTALLED_APPS = [
    # 其他代碼
    ...

    # 新增'article'代碼,激活app
    'article',
]

配置訪問路徑(urls)

然後再給app配置訪問路徑url

url可以理解爲訪問網站時輸入的網址鏈接,配置好urlDjango才知道怎樣定位app

打開my_blog目錄下的urls.py,增加以下代碼:

my_blog/urls.py

from django.contrib import admin
# 記得引入include
from django.urls import path, include

# 存放映射關係的列表
urlpatterns = [
    path('admin/', admin.site.urls),

    # 新增代碼,配置app的url
    path('article/', include('article.urls', namespace='article')),
]

pathDjango的路由語法:

  • 參數article/分配了app的訪問路徑;
  • include將路徑分發給下一步處理;
  • namespace可以保證反查到唯一的url,即使不同的app使用了相同的url後面會用到)。

記得在頂部引入include

在開發環境下,article的url爲:http://127.0.0.1:8000/article/

還沒結束。現在我們已經通過path將根路徑爲article的訪問都分發給article這個app去處理。但是app通常有多個頁面地址,因此還需要app自己也有一個路由分發,也就是article.urls了。

article可以有多個頁面,如列表頁面、詳情頁面等,那麼就需要如下兩個url:

http://127.0.0.1:8000/article/list/

http://127.0.0.1:8000/article/detail/

app 中的 urls.py 就是用來區分它們的。

app生成時並沒有這個文件,因此需要自己在article文件夾中創建urls.py,在裏面輸入:

article/urls.py

# 引入path
from django.urls import path

# 正在部署的應用的名稱
app_name = 'article'

urlpatterns = [
    # 目前還沒有urls
]

urlpatterns中暫時是空的,沒寫入任何路徑的映射,不着急以後會寫。

此時我們的app就配置完成了。

注意此時app還沒有寫好,因此啓動服務器可能會報錯,是正常的。

Django2.0之後,appurls.py必須配置app_name,否則會報錯。

總結

本章創建了博客文章功能的app,學習了註冊app並配置url

下一章開始編寫模型Model,理解Django的數據庫處理。

創作不易,點個贊吧!!

版權聲明:如無特殊說明,文章均爲本站原創,轉載請註明出處
本文鏈接:https://blog.csdn.net/wsad861512140

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章