溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Django框架使用教程

發(fā)布時間:2020-05-27 11:45:03 來源:億速云 閱讀:204 作者:鴿子 欄目:編程語言

新建一個Web框架工程

我們再命令行界面進(jìn)到要創(chuàng)建項目的目錄下,然后輸入以下命令:

django-admin startproject mysite

這里的 django-admin 是一個用于管理 django 的工具,在我們安裝 django 的過程中會默認(rèn)進(jìn)行依賴安裝。 mysite 是工程名稱,可以根據(jù)自己的需求進(jìn)行修改。創(chuàng)建后,我們會得到以下的目錄結(jié)構(gòu):

修改工程,增加功能

我們在這里需要增加具體應(yīng)用,以及通過配置 路由映射 來進(jìn)行相關(guān)功能的增加。

  1. 【修改工程】創(chuàng)建一個具體應(yīng)用(app)

命令:python manage.py startapp helloapp

命令執(zhí)行完成后,會在根目錄下新建一個helloapp的目錄

  1. 【修改工程】修改應(yīng)用的views.py

    # Create your views here.
    from django.http import HttpResponse

    def hello(request):
    return HttpResponse("Hello World! I am coming...")
  2. 【修改工程】修改URL路由

    在和項目命對應(yīng)的目錄下的 urls.py 文件中指定URL與處理函數(shù)之間的路徑關(guān)系。

    from django.contrib import admin
    from django.urls import include, path
    from helloapp import views      # from the subapp import related views

    urlpatterns = [                 # config the routes like vue's vue-router
       path('admin/', admin.site.urls),
       path('index/', views.hello),
    ]

    我們首先需要引入對應(yīng)app下的 views 文件,然后配置路由對應(yīng)關(guān)系

  3. 【修改工程】修改URL路由

    path('index/', views.hello)

    這里的 第一個參數(shù) 表示url地址,我們這里的就會響應(yīng) 域名/index/這個路徑的訪問; 第二個參數(shù) 則表示指定某個處理函數(shù),例如這里我們制定了 views.hello

運行工程

python manage.py runserver

運行后我們訪問對應(yīng)的路由,就會得到相應(yīng)的返回信息;如果訪問未配置的則會返回 404 notfound。

不得不說的 django-admin 和 manage.py

django-admin

django-admin <command> [options]

django-admin是一個Django框架全局的管理工具:

  • 建立并管理Django工程
  • 建立并管理Django工程使用的數(shù)據(jù)庫
  • 控制調(diào)試或日志信息
  • 運行并維護(hù)Django工程

我們也可以通過 django-admin help 命令來查看更多的功能

manage.py

python manage.py <command> [options]

功能和 django-admin 類似,但是作用范圍僅作用于當(dāng)前項目。

我們也可以通過 python manage.py help 命令來查看更多功能。

最小程序的改進(jìn)

需求:返回一個HTML頁面,而不是一個字符串 
思路:建立模板(T),對應(yīng)特定請求,返回模板頁面
新建hello2app,通過index2來訪問

新建hello2app應(yīng)用

`python manage.py startapp hello2app`

使用templateTest.html為返回頁面,修改views.py

```python
# hello2app/views.py
from django.shortcuts import render
def hello(request):
    return render(request, "PYC01-HTMLJSDemo.html")
```

這里,`render()` 是一個打包函數(shù),第一個參數(shù)是 request, 第二個參數(shù)是要返回的模板頁面。
  • 在hello2app應(yīng)用中,新增urls.py文件(本地路由文件)

    # hello2app/urls.py

    from django.urls import path
    from . import views         # . 代表當(dāng)前 app
    urlpatterns = [             # urlpatterns 變量名成是固定的
       path('', views.hello)
    ]
  • 在全局路由文件中增加對本應(yīng)用路由文件的引用

    # mysite/urls.py

    from django.contrib import admin
    from django.urls import include, path
    # include()函數(shù),用于引入其他路由文件
    from helloapp import views
    urlpatterns = [
       path('index2/', include('hello2app.urls')),
       # 將hello2app的局部路由增加到全局路由中
       path('index/', views.hello),
       path('admin/', admin.site.urls),
    ]
  • 設(shè)置模板路徑,讓Django框架找到模板所在目錄

    我們由于返回了模板文件,所以我們需要對 mysite/settings.py 進(jìn)行修改配置一下路徑,至此,也就完成了一個最小的Django項目了!

    TEMPLATES = [
    {
       'BACKEND': 'django.template.backends.django.DjangoTemplates',
       'DIRS': [os.path.join(BASE_DIR, 'hello2app/templates')],    # 指定templates所在路徑
       'APP_DIRS': True,
       'OPTIONS': {
           'context_processors': [
               'django.template.context_processors.debug',
               'django.template.context_processors.request',
               'django.contrib.auth.context_processors.auth',
               'django.contrib.messages.context_processors.messages',
               ],
           },
       },
    ]

以上就是Django框架入門使用1.0的詳細(xì)內(nèi)容,更多請關(guān)注億速云其它相關(guān)文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI