最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Django框架創(chuàng)建項目

 更新時間:2022年06月10日 15:20:03   作者:springsnow  
這篇文章介紹了使用Django框架創(chuàng)建項目的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

本章我們將介紹Django 管理工具及如何使用 Django 來創(chuàng)建項目,第一個項目我們以 HelloWorld 來命令項目。

一、Django 管理工具

安裝 Django 之后,您現(xiàn)在應(yīng)該已經(jīng)有了可用的管理工具 django-admin.py。我們可以使用 django-admin.py 來創(chuàng)建一個項目:

我們可以來看下django-admin 的命令介紹:

$ django-admin.py

二、創(chuàng)建第一個項目

使用 django-admin.py 來創(chuàng)建 HelloWorld 項目:

django-admin.py startproject HelloWorld

創(chuàng)建完成后我們可以查看下項目的目錄結(jié)構(gòu):

$ cd HelloWorld/
$ tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- asgi.py
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
`-- manage.py

目錄說明:

  • HelloWorld: 項目的容器。
  • manage.py: 一個實用的命令行工具,Django管理主文件。
  • HelloWorld/__init__.py: 一個空文件,告訴 Python 該目錄是一個 Python 包。
  • HelloWorld/asgi.py: 一個 ASGI 兼容的 Web 服務(wù)器的入口,以便運行你的項目。
  • HelloWorld/settings.py: 項目的設(shè)置/配置文件。
  • HelloWorld/urls.py: 項目的URL路由文件; 一份由 Django 驅(qū)動的網(wǎng)站"目錄"。
  • HelloWorld/wsgi.py: 一個 WSGI 兼容的 Web 服務(wù)器的入口,以便運行你的項目。

接下來我們進入 HelloWorld 目錄輸入以下命令,啟動服務(wù)器:

manage.py runserver 0.0.0.0:8000

0.0.0.0 讓其它電腦可連接到開發(fā)服務(wù)器,8000 為端口號。如果不說明,那么端口號默認(rèn)為 8000。

在瀏覽器輸入你服務(wù)器的 ip(這里我們輸入本機 IP 地址: 127.0.0.1:8000) 及端口號,如果正常啟動,輸出結(jié)果如下:

三、視圖和 URL 配置

在先前創(chuàng)建的 HelloWorld 目錄下的 HelloWorld 目錄新建一個 views.py 文件,并輸入代碼:

from django.http import HttpResponse #需要導(dǎo)入HttpResponse模塊

def hello(request):  # 定義Hello函數(shù)。request參數(shù)必須有,名字類似self的默認(rèn)規(guī)則,可以修改,它封裝了用戶請求的所有內(nèi)容
    return HttpResponse("Hello world ! ") #不能直接字符串,必須是由這個類封裝,此為Django規(guī)則

接著,綁定 URL 與視圖函數(shù)。打開 urls.py 文件,刪除原來代碼,將以下代碼復(fù)制粘貼到 urls.py 文件中:

from django.contrib import admin
from django.urls import path
from django.conf.urls import url

from mytest import views  # 首先需要導(dǎo)入對應(yīng)APP的views

urlpatterns = [
    path('admin/', admin.site.urls),  # admin后臺路由
    url(r'^$', views.hello),  # 你定義的路由,第一個參數(shù)為引號中的正則表達式,第二個參數(shù)業(yè)務(wù)邏輯函數(shù)(當(dāng)前為views中的hello函數(shù))
]

整個目錄結(jié)構(gòu)如下:

$ tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- __init__.pyc
|   |-- settings.py
|   |-- settings.pyc
|   |-- urls.py              # url 配置
|   |-- urls.pyc
|   |-- views.py              # 添加的視圖文件
|   |-- views.pyc             # 編譯后的視圖文件
|   |-- wsgi.py
|   `-- wsgi.pyc
`-- manage.py

完成后,啟動 Django 開發(fā)服務(wù)器,并在瀏覽器訪問打開瀏覽器并訪問:

我們也可以修改以下規(guī)則:

from django.urls import path
 
from . import views
 
urlpatterns = [
    path('hello/', views.hello),
]

通過瀏覽器打開 http://127.0.0.1:8000/hello,輸出結(jié)果如下:

注意:項目中如果代碼有改動,服務(wù)器會自動監(jiān)測代碼的改動并自動重新載入,所以如果你已經(jīng)啟動了服務(wù)器則不需手動重啟。

四、path() 函數(shù)

Django path() 可以接收四個參數(shù),分別是兩個必選參數(shù):route、view 和兩個可選參數(shù):kwargs、name。

語法格式:

path(route, view, kwargs=None, name=None)
  • route: 字符串,表示 URL 規(guī)則,與之匹配的 URL 會執(zhí)行對應(yīng)的第二個參數(shù) view。
  • view: 用于執(zhí)行與正則表達式匹配的 URL 請求。
  • kwargs: 視圖使用的字典類型的參數(shù)。
  • name: 用來反向獲取 URL。

如果是 Django >= 2.0 的版本,path() 函數(shù)無法匹配正則表達式,需要使用 re_path() 即可匹配正則表達式:

from django.urls import re_path 
from . import view 
urlpatterns = [
    re_path(r'^hello$',view.hello),
]

五、使用PyCharm創(chuàng)建Django項目

PyCharm是一種Python IDE,帶有一整套可以幫助用戶在使用Python語言開發(fā)時提高其效率的工具,比如調(diào)試、語法高亮、Project管理、代碼跳轉(zhuǎn)、智能提示、自動完成、單元測試、版本控制。此外,該IDE提供了一些高級功能,以用于支持Django框架下的專業(yè)Web開發(fā)。剛玩Python或Django的朋友,如果沒有自己熟悉的IDE,建議直接使用這個。PyCharm可跨平臺,支持市面流行的操作系統(tǒng)。

下面,我教大家使用pycharm創(chuàng)建自己的第一個django項目。

1、打開PyCharm,新建項目

界面講解:

點擊創(chuàng)建之后,PyCharm自動幫我們創(chuàng)建一個虛擬環(huán)境和安裝最新版的Django。

安裝成功之后,我們剛才指定的目錄下就多出一個untiltled4文件夾。打開untiltled4文件夾。

這就是Django的目錄結(jié)構(gòu),其中

templates文件夾是存放模板文件的,

untiltled4文件夾放的是Django的一些配置文件。

manage.py文件則是對django-admin.py的簡單包裝的一個文件,通過它能運行一些簡單的命令。

venv文件夾就是virtualenv虛擬環(huán)境目錄,venv文件夾不是django源碼里的東西,只是我們創(chuàng)建虛擬環(huán)境時指定到這個目錄下了而已。

我們在創(chuàng)建Django項目的時候,也可以不用在More Settings里創(chuàng)建APP和指定templates文件夾。

我們可以手動通方法創(chuàng)建。

2、通過命令行,添加新的APP。

點擊PyCharm下方的Terminal,看下圖:

注意命令行前面的 (venv)出現(xiàn)這個,表示我們是在virtualenv虛擬環(huán)境下操作,如果沒有,或者虛擬環(huán)境名和我們創(chuàng)建的名稱不一致,說明PyCharm配置錯誤,我們輸入任何命令對剛才我們創(chuàng)建的項目來說是無效的。

我們通過命令行,進入我們的項目目錄,然后輸入

python manage.py startapp mytest

創(chuàng)建一個叫 mytest的APP。

或者從主菜單中,選擇“工具”運行manage.py task,在Django控制臺對話框中,鍵入startapp startapp mytest.

回車之后我們就能看到,我們的項目目錄里多出一個mytest文件夾。

關(guān)于更多的一些Django常用的命令,大家可以看看這篇文章:Django常用命令

3、遷移數(shù)據(jù)庫。

在Terminal下輸入下面的命令,生成和同步數(shù)據(jù)庫。

python manage.py makemigrations
python manage.py migrate

4、啟動Django項目

點擊“運行”按鈕

項目啟動成功,然后我們通過瀏覽器訪問http://127.0.0.1:8080/

這樣,我們的第一個Django項目就創(chuàng)建完成了。

5、Django模板

修改views文件:

from django.shortcuts import render


def hello(request):
    # return HttpResponse("Hello world ! ")
    context = {'hello': 'Hello World!'}
    return render(request, 'hello.html', context)  # 將綁定的數(shù)據(jù)傳入前臺

為了讓django知道html文件在哪里,需要修改settings文件的相應(yīng)內(nèi)容。默認(rèn)情況下,正好適用,無需修改。

被繼承的模板base.html:

{#base.html#}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>模板測試</title>
</head>
<body>
    <h1>{{ hello }}</h1>
    <p>Django模板測試</p>
    {% block mainbody %}
       <p>original</p>
    {% endblock %}
</body>
</html>

hello.html 中繼承 base.html,并替換特定 block,hello.html 修改后的代碼如下:

{#hello.html#}
{% extends "base.html" %}
 
{% block mainbody %}
   <p>繼承了 base.html 文件</p>
{% endblock %}

刷新網(wǎng)頁,輸出結(jié)果如下:

6、引入靜態(tài)文件

需要將一些靜態(tài)資源引入項目,新建一個static目錄,可以將js、css、圖片等文件放入這個目錄中:

 

 

需要讓Django找到這個目錄,需要在setting文件中進行配置:

STATICFILES_DIRS=

在html文件中引入靜態(tài)資源:

{% load static %}
{#base.html#}
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="{% static 'css/mypage.css' %}" rel="external nofollow" >
    <script src="{% static 'js/jquery-1.11.1.js' %}"></script>
<title>模板測試</title>
</head>
    <body>
        <h1>{{ hello }}</h1>
        <p>Django模板測試</p>
        {% block mainbody %}
           <p>original</p>
        {% endblock %}
    </body>
</html>

第一行引入靜態(tài)文件路徑{% load staticfiles %},在<head>...</head>里加入CSS網(wǎng)鏈和js文件

到此這篇關(guān)于使用Django框架創(chuàng)建項目的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python中DataFrame中的xs用法

    Python中DataFrame中的xs用法

    本文主要介紹了Python中DataFrame中的xs用法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Python實現(xiàn)農(nóng)歷轉(zhuǎn)換教程詳解

    Python實現(xiàn)農(nóng)歷轉(zhuǎn)換教程詳解

    農(nóng)歷,是我國現(xiàn)行的傳統(tǒng)歷法。它是根據(jù)月相的變化周期,每一次月相朔望變化為一個月,參考太陽回歸年為一年的長度,并加入二十四節(jié)氣與設(shè)置閏月以使平均歷年與回歸年相適應(yīng)。本文將用Python實現(xiàn)農(nóng)歷轉(zhuǎn)換,需要的可以參考一下
    2022-03-03
  • python中base64編碼簡介

    python中base64編碼簡介

    Base64是一種任意二進制到文本字符串的編碼方法,常用于在URL、Cookie、網(wǎng)頁中傳輸少量二進制數(shù)據(jù),Base64是一種用64個字符來表示任意二進制數(shù)據(jù)的方法,這篇文章主要介紹了python中base64編碼,需要的朋友可以參考下
    2022-12-12
  • 利用Python如何實現(xiàn)一個小說網(wǎng)站雛形

    利用Python如何實現(xiàn)一個小說網(wǎng)站雛形

    這篇文章主要給大家介紹了關(guān)于利用Python如何實現(xiàn)一個小說網(wǎng)站雛形的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • 基于Python進行年齡和性別檢測

    基于Python進行年齡和性別檢測

    這篇文章主要介紹了通過Python 編程語言帶您完成使用機器學(xué)習(xí)進行年齡和性別檢測的任務(wù)。文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2021-12-12
  • Python中的類屬性與實例屬性的區(qū)別和用法

    Python中的類屬性與實例屬性的區(qū)別和用法

    在Python中,類屬性和實例屬性是面向?qū)ο缶幊痰暮诵母拍钪?它們允許存儲和管理對象的數(shù)據(jù),并影響對象的行為,本篇文章中,會學(xué)習(xí)到類屬性和實例屬性的概念、區(qū)別以及如何在Python中使用它們,同時提供大量的示例代碼來更好地理解它們的作用和用法,需要的朋友可以參考下
    2023-11-11
  • python獲取異常信息exc_info和print_exc的使用

    python獲取異常信息exc_info和print_exc的使用

    python通過sys.exc_info獲取異常信息,通過traceback.print_exc打印堆棧信息,包括錯誤類型和錯誤位置等信息,本文就來介紹一下具體用法,感興趣的可以了解一下
    2023-12-12
  • python隊列queue模塊詳解

    python隊列queue模塊詳解

    這篇文章主要為大家詳細介紹了python隊列queue模塊的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Python實現(xiàn)PS濾鏡中的USM銳化效果

    Python實現(xiàn)PS濾鏡中的USM銳化效果

    這篇文章主要介紹了Python實現(xiàn)PS濾鏡中的USM銳化效果,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下
    2020-12-12
  • 如何使用Python?VTK高亮顯示actor

    如何使用Python?VTK高亮顯示actor

    這篇文章主要介紹了如何使用Python?VTK高亮顯示actor,通過Python-VTK在同一個窗口中,高亮顯示選中的actor。本例子中的代碼,當(dāng)窗口中的圓球actor被選中時,會變成紅色,并且會顯示actor三遍面片邊緣信息,下文相關(guān)內(nèi)容需要的小伙伴可以參考一下
    2022-04-04

最新評論

固原市| 登封市| 邵东县| 凤冈县| 交口县| 河池市| 安图县| 金塔县| 西林县| 林西县| 绥芬河市| 巴林右旗| 新丰县| 漳平市| 石屏县| 化德县| 荔波县| 青龙| 安化县| 乌什县| 灌南县| 襄城县| 刚察县| 英超| 铁岭市| 康乐县| 荃湾区| 通化市| 大港区| 石家庄市| 合川市| 鲁甸县| 密云县| 崇文区| 巴青县| 九龙县| 烟台市| 池州市| 绥棱县| 沙雅县| 慈溪市|