1. 程式人生 > >Django-下載安裝-配置-建立django專案-三板斧簡單使用

Django-下載安裝-配置-建立django專案-三板斧簡單使用

目錄

  • Django
    • 簡介
    • 使用 django 的注意事項
      • 計算機名不能有中文
      • Django版本問題
    • django下載安裝
      • 在命令列下載安裝
      • 在pycharm圖形介面下載安裝
      • 檢驗是否安裝成功
    • 建立Django專案
      • 命令列下建立與啟動
      • pycharm下建立與啟動
      • django專案目錄介紹
    • 新建應用(app)特別注意*****
      • 配置檔案 settings.py 解析
    • django小白必會三板斧
      • HttpResponse 舉例
      • render 舉例(可傳資料模板渲染)
      • redirect 案例

Django

官網

簡介

是一個為完美主義者設計的web框架

The web framework for perfectionists with deadlines.

django可以使你能夠用更少的程式碼,更加輕鬆且快速去開發web應用。

Django makes it easier to build better Web apps more quickly and with less code.

下面這段太長了,有請百度翻譯:

​ django是一個高階python web框架,它鼓勵快速開發和乾淨、實用的設計。由經驗豐富的開發人員構建,解決了許多web開發的麻煩,因此你可以專注於編寫你的應用程式,而無需重新造輪子。它是免費且開源的。

Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel. It’s free and open source.

說人話:

  • 大而全,自帶的功能特別特別多,就類似於航空母艦
  • 缺點:有時過於笨重(小專案有很多自帶功能用不到)

使用 django 的注意事項

  • 計算機名不能是中文

  • 檔案的命名儘量也不要用中文

    ​ 如果是中文可能會引起 encoding 編碼報錯

  • 一個pycharm視窗只能有一個專案,不要把多個專案專案放在一個視窗下

  • 注意 django 的版本問題...(下面有展開說明)

  • 起了一個django專案後,一定要注意埠

    ​ 想起多個django專案,要記得更換埠(防止埠衝突)

計算機名不能有中文

Django版本問題

不同版本的django當然有所不同,為了防止出現意外bug,最好使用同一版本(行業潛規則:不要嘗試最新版本)

下文以 1.11.11 版本展開,版本不同可能會有不同的問題

django下載安裝

下載安裝還是需要一點點時間的,可以考慮使用國內的配置pip倉庫地址

下面的安裝方式選一個即可

在命令列下載安裝

pip3 install django==1.11.11(1.11.11是版本號)

在pycharm圖形介面下載安裝

一定要記得選你需要的版本

檢驗是否安裝成功

在命令列敲入如下命令即可

django-admin

返回類似下面的一堆資訊就是安裝成功了

建立Django專案

命令列下建立與啟動

如果不會的話,讓你在伺服器上改咋辦?

命令列建立 django 專案

django-admin startproject project_name(專案名)

命令列建立 django 專案

先切換到專案要存放的目錄再創

一個應用(app)對應一塊兒獨立的功能

django-admin startapp app01(應用名)

python manage.py startapp app01(應用名)

命令列啟動django專案

要切到專案目錄

python manage.py runserver

注意

用命令列建立 django 專案不會自動新建 templates 模板資料夾,需要你自己手動建立並且需要你自己去 settings.py 檔案中註冊該檔案路徑

pycharm下建立與啟動

創專案時可以創一個應用(app),後續通過命令列建立

後續新增app

命令列(要掌握,可能面試 ****

python manage.py startapp app02

啟動專案

點綠色箭頭即可啟動專案(如果左邊那個圖示不對,那就自己編輯下)

如果沒有那個圖示

專案無法啟動

如果命令列啟動專案沒問題,而 pycharm 啟動啟動不了請注意 python 直譯器是否選對,我有朋友就是選成了 pythonw,導致 django 專案在 pycharm 裡面跑不起來

一定要把錯誤的給刪掉,否則下一次還是預設使用第一個的

django專案目錄介紹

+專案名檔案
    +應用資料夾(app01)
        +migrations 資料夾     資料庫遷移記錄
        -admin.py   django後臺管理
        -apps.py    應用註冊相關
        -models.py  orm表模型類
        -tests.py   測試檔案
        -views.py   檢視函式/類
    +與專案名同名的資料夾
        -settings.py    django暴露給使用者可配置的檔案
        -urls.py        路由檔案,配置路由與檢視函式對應關係
        -wsgi.py        
    +templates      頁面模板資料夾,一般放待渲染資料的html頁面
        -test.html  待渲染資料的頁面(使用django自帶的模板語法去渲染)
    -mange.py       django的入口檔案
    

新建應用(app)特別注意*****

建立的應用(app)一定要在 settings 裡 註冊(新增記錄)才能生效(前面那些是 django 專案自帶的 app)

配置檔案 settings.py 解析

擷取部分部分介紹

# ...其他程式碼...
# Application definition
# 建立的應用一定要在這裡註冊才能生效
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app01.apps.App01Config',  # 規範寫法
    'app02',  # 簡寫
    'app03'
]

# django中介軟體  django的門戶 保安
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

ROOT_URLCONF = 'myfirstdjangodemo.urls'


# 模板檔案配置相關
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, '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',
            ],
        },
    },
]

WSGI_APPLICATION = 'myfirstdjangodemo.wsgi.application'


# Database
# https://docs.djangoproject.com/en/1.11/ref/settings/#databases

# 資料庫相關
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}
# ...其他程式碼...

django小白必會三板斧

前提:這一塊開始預設 django 專案的已經建立好了

三板斧:
    HttpResponse:   用來返回字串給頁面
    render:         返回html頁面並且能夠給該頁面傳值
    redirect:       重定向,返回指定的頁面html(瀏覽器可以看到302狀態碼)

強調:每新新增一個功能都應該在路由檔案 urls.py中新增一個路由與檢視的對應關係(請求路徑的時候才有對應的 檢視函式/類 去處理)

最簡單的步驟:

  1. 先建立app
  2. 配置路由(路由與檢視函式的對應關係)
  3. 寫檢視函式(要用到 HttpResponse, redirect,記得自己導過來)
  4. 編寫模板頁面

HttpResponse 舉例

新增路由

first_django_project/urls.py

from django.conf.urls import url
from django.contrib import admin
from app01 import views  # 匯入檢視函式檔案

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),  # 新新增的路由, index 瀏覽器埠後面的地址 --> 127.0.0.1地址:8000埠/index, views.index 輸入前面地址時將要執行的函式
]

編寫對應的檢視函式

app01/views.py

from django.shortcuts import render, HttpResponse, redirect
# 引入 HttpResponse(直接返回字串並打包成響應體返回) 和 redirect(重定向頁面)


# Create your views here.
# index 路由對應的檢視函式,這裡用 HttpResponse 返回一個字串
def index(request):
    return HttpResponse('<h1>Hello, this is Index!</h1>')  # 可以返回html標籤,瀏覽器依舊會渲染效果

在瀏覽器中請求資料

127.0.0.1:8000/index/

render 舉例(可傳資料模板渲染)

新增路由

first_django_project/urls.py

from django.conf.urls import url
from django.contrib import admin
from app01 import views  # 匯入檢視函式檔案

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),
    url(r'^login/', views.login),  # 新新增的 登入路由 與 對應的檢視函式
]

配置檢視函式

新建頁面

templates/login.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h1>這是登入頁面</h1>
    {# django的模板語法(支援字典 點語法取值 dic.key,但不支援字典的原生語法,這一點不如jinja2(模板引擎語法,一般和flask框架搭配使用) 強大!) #}
    <h3>{{ user_dict.username }}</h3>
</body>
</html>

新增檢視函式

app01/views.py

from django.shortcuts import render, HttpResponse, redirect
# 引入 HttpResponse(直接返回字串並打包成響應體返回) 和 redirect(重定向頁面)


# Create your views here.
def index(request):
    return HttpResponse('<h1>Hello, this is Index!</h1>')


# login 路由對應的檢視函式,這裡用 render 返回 html 格式的頁面字串
def login(request):
    user_dict = {  # 模擬後臺處理好的資料
        "username": "jason"
    }
    # login.html 這裡不需要加上templates 資料夾,已經做過配置了,會自動找到的
    # return render(request, 'login.html')  # 可什麼資料都不帶
    # {"user_dict": user_dict} 包裝成響應體返回, 鍵"user_dict"在模板中可以拿到
    return render(request, 'login.html', {"user_dict": user_dict})

在瀏覽器中請求資料

redirect 案例

老規矩:新增路由

first_django_project/urls.py

from django.conf.urls import url
from django.contrib import admin
from app01 import views  # 匯入檢視函式檔案

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),
    url(r'^login/', views.login),
    url(r'^home/', views.home),  # 新新增的 home 路由 與 對應的檢視函式(這裡是演示重定向,直接跳轉到 login路由去處理)
]

配置檢視函式

from django.shortcuts import render, HttpResponse, redirect
# 引入 HttpResponse(直接返回字串並打包成響應體返回) 和 redirect(重定向頁面)


# Create your views here.
def index(request):
    return HttpResponse('<h1>Hello, this is Index!</h1>')


def login(request):
    user_dict = {
        "username": "jason"
    }
    return render(request, 'login.html', {"user_dict": user_dict})


def home(request):  # home 路由對應的檢視函式
    print("----> 請求home 路徑,進入到了 home的路由函式...")
    return redirect('/login/')

在瀏覽器中請求資料

剛在後臺列印了一句話,看看有沒有

圖中的標註是最新版本QQ的截圖新功能(感覺很棒,推薦使用!哈哈哈)

相關推薦

Django-下載安裝-配置-建立django專案-三板斧簡單使用

目錄 Django 簡介 使用 django 的注意事項 計算機名不能有中文 Django版本問題 django下載安裝 在命令列下載安裝

IntelliJ IDEA的下載+安裝+配置+建立工程

01下載 百度到官網 進入後點擊download 發現該工具已經完美支援三個系統,它可以自動探測我們是windows系統。每個平臺下面都有兩個版本,一個Ultimate(優勢:所有的功能都能完美支援,缺點收費特貴

2018年9月26日Django安裝以及建立第一個Django專案和子模組

python字串物件的find()和index()方法的區別? index()和find()函式都是用於查詢字串,但是index()在沒有找到子串的時候會有報錯丟擲異常,影響程式執行。find()在找不到目標子串時不會丟擲異常,而是會返回-1,因此不會影響程式的執行。   函式

Django安裝以及建立專案

django是用python寫的一個前端框架,配合python來開發,據說用起來很不錯。今天就試一下。 最近有專案要使用到django,自己上網搜了安裝和使用方法,安裝完成後自己總結下經過。 電腦系統window7    python環境是3.6版本 首先開

Django部署與配置Django專案與應用、django模型

一、部署django 1.1 Django概述 1.1.1 Django簡介 Django是一個開源的Web應用框架,由Python寫成。 1.1.2 框架介紹 Django框架的核心包括: 1.  面向物件的對映器,用作資料模型(以Pyth

Windows——Node.js安裝配置+Vue安裝建立Vue專案

  Node.js安裝 安裝環境 Windows 10 Enterprise-X64 node-v10.13.0-x64.msi 安裝步驟 下載對應你係統的Node.js版本——選安裝目錄進行安裝——環境配置——測試 簡介

python-django安裝配置(mac 版)

2、解壓Django-1.xx.yy.tar.gz ,進入解壓目錄執行命令 sudo python setup.py install 3、檢視是否安裝成功 django-admin.py --version 4、建立一個工程 djang

Django框架簡介和建立django專案的基本流程

1、Django簡介   Django是Python語言中的一個web框架,Python語言中主流的web框架有Django、Tornado、Flask 等多種。Django相較與其它WEB框架,其優勢為: ​ 大而全,框架本身集成了ORM、模型繫結、模板引擎、快取、Session等功能,是一個全

eclipse的下載安裝配置

pos post 配置jdk 分號 ech 雙擊 編輯 ads 版本信息 1、在eclipse官網下載與你電腦版本相對應的安裝包。鏈接:https://www.eclipse.org/downloads/eclipse-packages/ 2、下載與eclipse版本相對應

Linux下載安裝配置FTP

star kcon fig png enable info body 啟動 rwx 一、介紹 用於Internet上的文件的上傳和下載 二、安裝 1.安裝FTP軟件 [root@ping ~]# yum -y install vsftpd 2.開機自

JDK下載-安裝-配置

windows系統 get 安裝完成 替換 strong 界面 windows dt.jar acl 1.JDK的下載 jdk1.8版本 下載地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8

西遊之路——python全棧——django中models配置 python---django使用資料庫(orm)

目錄   Django支援多種資料庫,sqlite,mysql,oracle等,其預設資料庫是sqlite 在settings檔案中可以發現: DATABASES = { 'default': { 'ENGINE': '

Windows 7 下Maven的下載安裝配置 (配置本地倉庫及修改路徑)

環境 windows 7 64位 官網下載Maven 1 首先去官網:http://maven.apache.org/ 進行下載,這裡儘量不要選太高階的版本,選個穩定的版本就可以了。 上面的兩個箭頭都可以進行選擇,第一個箭頭是代表最新的版本,這裡我選擇了第二個箭頭,也

【Windows】Windows Server 2012 R2 下載/安裝/配置SVN

一.準備工作 下載並安裝VisualSVN Server和TortoiseSVN; 安裝教程:https://blog.csdn.net/jinmie0193/article/details/81583264 二.配置SVN 1.開啟VisualSVN Server Mana

django的命令, 配置,以及django使用mysql的流程

1.Django的命令: 下載 pip install django==1.11.16 pip install django==1.11.16 -i 源 建立專案 django-admin startproject app01(專案名

maven的下載安裝配置

一.下載     百度搜索maven 點選進入maven的官網,選擇下載 下載完成後解壓。 maven的配置 本地倉庫配置    新建F:\MavenRepository資料夾,然後在下載的maven

Win10下載安裝配置apache(小白版)

下載apache 安裝 解壓下載得到的zip包,然後放到你喜歡的目錄下即可。 配置 1.先明確這樣兩個目錄: apache安裝路徑和apache的bin路徑,方便我們接下來高效傻瓜式配置。 我的apache安裝路徑是:E:\Develop\servicers

Cordova安裝建立Android專案

1.  配置環境變數(注意:在驗證環境變數是否配置成功時,如果不好用,重新開一個終端在驗證試試) 2)SDK,配置adb環境變數,進入sdk目錄,將其“platform-tools目錄路徑“和“tools”目錄路徑新增進環境變數的Path中,在path的末尾新增“;”+

MySql資料庫下載安裝配置流程

1.下載MySQL資料庫可以訪問官方網站:https://www.mysql.com/ 2.點選DOWNLOADS模組下的Community模組下的MySQL Community Server進行下載。 由於目前最新版本是:MySQL Community Server 5.7.2

Jmeter下載安裝配置

一,進入官網:http://jmeter.apache.org/ 1.第一步進入官網如下圖下載,點選Download Releasses 2.選擇進行下載,下載下來為一個壓縮包,解壓即可。 3.下載的是jmeter5.0版本,對應jdk1.8。然後就進行解壓。個人