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

DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫sqlite3)

 更新時(shí)間:2019年11月18日 08:39:48   作者:someonei  
今天小編就為大家分享一篇DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫sqlite3),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

1.安裝虛擬環(huán)境

虛擬環(huán)境是真實(shí)python環(huán)境的復(fù)制版本。

安裝虛擬環(huán)境的命令:

1)sudo pip install virtualenv #安裝虛擬環(huán)境

2)sudo pip install virtualenvwrapper #安裝虛擬環(huán)境擴(kuò)展包

3)編輯家目錄下面的.bashrc文件,添加下面兩行。

export WORKON_HOME=$HOME/.virtualenvs

source /usr/local/bin/virtualenvwrapper.sh

4)使用source .bashrc使其生效一下。

創(chuàng)建虛擬環(huán)境命令:

mkvirtualenv 虛擬環(huán)境名

創(chuàng)建python3虛擬環(huán)境:

mkvirtualenv -p python3 bj11_py3

進(jìn)入虛擬環(huán)境工作:

workon 虛擬環(huán)境名

查看機(jī)器上有多少個(gè)虛擬環(huán)境:

workon 空格 + 兩個(gè)tab鍵

退出虛擬環(huán)境:

deactivate

刪除虛擬環(huán)境:

rmvirtualenv 虛擬環(huán)境名

虛擬環(huán)境下安裝包的命令:

pip install 包名

注意:不能使用sudo pip install 包名,這個(gè)命令會(huì)把包安裝到真實(shí)的主機(jī)環(huán)境上而不是安裝到虛擬環(huán)境中。

apt-get install 軟件

pip install python包名

安裝django環(huán)境:

pip install django==1.8.2

查看虛擬環(huán)境中安裝了哪些python包:

pip list

pip freeze

2.創(chuàng)建項(xiàng)目

django-admin startproject 項(xiàng)目名稱

注意:創(chuàng)建應(yīng)用必須先進(jìn)入虛擬環(huán)境

__init__.py: 說明test1是一個(gè)python包。

settings.py: 項(xiàng)目的配置文件

urls.py: 進(jìn)行url路由的配置

wsgi.py: web服務(wù)器和DJanggo交互的入口

manage.py: 項(xiàng)目的管理文件

3.創(chuàng)建應(yīng)用

一個(gè)項(xiàng)目由很多個(gè)應(yīng)用組成的,每一個(gè)應(yīng)用完成一個(gè)特定的功能。

創(chuàng)建應(yīng)用的命令如下:

python manage.py startapp 應(yīng)用名

注 意:創(chuàng)建應(yīng)用時(shí)需要先進(jìn)入項(xiàng)目目錄。

應(yīng)用目錄如下:

__init__.py: 說明目錄是一個(gè)python模塊

models.py: 用于寫和數(shù)據(jù)庫項(xiàng)目的內(nèi)容

views.py: 接收數(shù)據(jù),處理數(shù)據(jù),與M,T進(jìn)行交互,返回應(yīng)答

定義處理函數(shù),視圖函數(shù) 培養(yǎng)

tests.py: 測試代碼的文件

admin.py: 網(wǎng)站后臺(tái)管理相關(guān)的文件

建立應(yīng)用和項(xiàng)目之間的聯(lián)系,需要對應(yīng)用進(jìn)行注冊。

修改settings.py中的INSTALLED_APPS配置項(xiàng)。

運(yùn)行開發(fā)web服務(wù)器命令:

python manage.py runserver

ORM

django中內(nèi)嵌了ORM框架,ORM框架可以將類和數(shù)據(jù)表進(jìn)行對應(yīng)起來,只需要通過類和對象就可以對數(shù)據(jù)表進(jìn)行操作。

設(shè)計(jì)類:模型類。

ORM另外一個(gè)作用:根據(jù)設(shè)計(jì)的類生成數(shù)據(jù)庫中的表。

模型類

模型類設(shè)計(jì)

在應(yīng)用models.py中設(shè)計(jì)模型類。

必須繼承與models.Model類。

1) 設(shè)計(jì)BookInfo類。

2) 設(shè)計(jì)HeroInfo類。

Models.ForeignKey可以建立兩個(gè)模型類之間一對多的關(guān)系,django在生成表的時(shí)候,就會(huì)在多的表中創(chuàng)建一列作為外鍵,建立兩個(gè)表之間一對多的關(guān)系。

模型類生成表

1) 生成遷移文件

命令:python manage.py makemigrations

遷移文件是根據(jù)模型類生成的。

2) 執(zhí)行遷移生成表

命令:python mange.py migrate

根據(jù)遷移文件生成表。

生成表名的默認(rèn)格式:

應(yīng)用名_模型類名小寫

通過模型類操作數(shù)據(jù)表

進(jìn)入項(xiàng)目shell的命令:

python manage.py shell

以下為在相互shell終端中演示的例子:

首先導(dǎo)入模型類:

from booktest.models import BookInfo,HeroInfo

1)向booktest_bookinfo表中插入一條數(shù)據(jù)。

b = BookInfo() #定義一個(gè)BookInfo類的對象

b.btitle ='天龍八部' #定義b對象的屬性并賦值

b.bpub_date = date(1990,10,11)

b.save() #才會(huì)將數(shù)據(jù)保存進(jìn)數(shù)據(jù)庫

2)查詢出booktest_bookinfo表中id為1的數(shù)據(jù)。

b = BookInfo.objects.get(id=1)

3)在上一步的基礎(chǔ)上改變b對應(yīng)圖書的出版日期。

b.bpub_date = date(1989,10,21)

b.save() #才會(huì)更新表格中的數(shù)據(jù)

4)緊接上一步,刪除b對應(yīng)的圖書的數(shù)據(jù)。

b.delete() #才會(huì)刪除

5)向booktest_heroInfo表中插入一條數(shù)據(jù)。

h = HeroInfo()

h.hname = '郭靖'
h.hgender = False

h.hcomment = ‘降龍十八掌'

b2 = BookInfo.objects.get(id=2)

h.hbook = b2 #給關(guān)系屬性賦值,英雄對象所屬的圖書對象

h.save()

6)查詢圖書表里面的所有內(nèi)容。

BookInfo.objects.all()

HeroInfo.objects.all()

關(guān)系操作

1)查詢出id為2的圖書中所有英雄人物的信息。

b = BookInfo.objects.get(id=2)

b.heroinfo_set.all() #查詢出b圖書中所有英雄人物的信息

后臺(tái)管理

1) 本地化

語言和時(shí)區(qū)的本地化。 zh-hans

修改settings.py文件。 Asia/Shanghai

2) 創(chuàng)建管理員

命令:python manage.py createsuperuser

3) 注冊模型類

在應(yīng)用下的admin.py中注冊模型類。

告訴djang框架根據(jù)注冊的模型類來生成對應(yīng)表管理頁面。

b = BookInfo()

str(b) __str__

4) 自定義管理頁面

自定義模型管理類。模型管理類就是告訴django在生成的管理頁面上顯示哪些內(nèi)容。

視圖

在Django中,通過瀏覽器去請求一個(gè)頁面時(shí),使用視圖函數(shù)來處理這個(gè)請求的,視圖函數(shù)處理之后,要給瀏覽器返回頁面內(nèi)容。

視圖函數(shù)的使用

1)定義視圖函數(shù)

視圖函數(shù)定義在views.py中。

例:

def index(request):

#進(jìn)行處理。。。

return HttpResponse('hello python')

視圖函數(shù)必須有一個(gè)參數(shù)request,進(jìn)行處理之后,需要返回一個(gè)HttpResponse的類對象,hello python就是返回給瀏覽器顯示的內(nèi)容。

2)進(jìn)行url配置

url配置的目的是讓建立url和視圖函數(shù)的對應(yīng)關(guān)系。url配置項(xiàng)定義在urlpatterns的列表中,每一個(gè)配置項(xiàng)都調(diào)用url函數(shù)。

url函數(shù)有兩個(gè)參數(shù),第一個(gè)參數(shù)是一個(gè)正則表達(dá)式,第二個(gè)是對應(yīng)的處理動(dòng)作。

配置url時(shí),有兩種語法格式:

a) url(正則表達(dá)式,視圖函數(shù)名)

b) url(正則表達(dá)式,include(應(yīng)用中的urls文件))

工作中在配置url時(shí),首先在項(xiàng)目的urls.py文件中添加配置項(xiàng)時(shí),并不寫具體的url和視圖函數(shù)之間的對應(yīng)關(guān)系,而是包含具體應(yīng)用的urls.py文件,在應(yīng)用的urls.py文件中寫url和視圖函數(shù)的對應(yīng)關(guān)系。

url匹配的過程

在項(xiàng)目的urls.py文件中包含具體應(yīng)用的urls.py文件,應(yīng)用的urls.py文件中寫url和視圖函數(shù)的對應(yīng)關(guān)系。

當(dāng)用戶輸入如http://127.0.0.1:8000/aindex時(shí),去除域名和最前面的/,剩下aindex,拿aindex字符串到項(xiàng)目的urls文件中進(jìn)行匹配,配置成功之后,去除匹配的a字符,那剩下的index字符串繼續(xù)到項(xiàng)目的urls文件中進(jìn)行正則匹配,匹配成功之后執(zhí)行視圖函數(shù)index,index視圖函數(shù)返回內(nèi)容hello python給瀏覽器來顯示。

模板

模板不僅僅是一個(gè)html文件。

模板文件的使用

1) 創(chuàng)建模板文件夾

2) 配置模板目錄

3) 使用模板文件

a) 加載模板文件

去模板目錄下面獲取html文件的內(nèi)容,得到一個(gè)模板對象。

b) 定義模板上下文

向模板文件傳遞數(shù)據(jù)。

c) 模板渲染

得到一個(gè)標(biāo)準(zhǔn)的html內(nèi)容。

給模板文件傳遞數(shù)據(jù)

模板變量使用:{{ 模板變量名 }}

模板代碼段:{%代碼段%}

for循環(huán):

{% for i in list %}

{% endfor %}

以上這篇DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫sqlite3)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python使用Flask框架創(chuàng)建一個(gè)簡單的動(dòng)態(tài)日歷效果

    python使用Flask框架創(chuàng)建一個(gè)簡單的動(dòng)態(tài)日歷效果

    這篇文章主要介紹了python使用Flask框架創(chuàng)建一個(gè)簡單的動(dòng)態(tài)日歷,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2024-12-12
  • Python繪制直方圖的示例代碼

    Python繪制直方圖的示例代碼

    本文主要介紹了如何使用Python繪制直方圖,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • mysql 之通過配置文件鏈接數(shù)據(jù)庫

    mysql 之通過配置文件鏈接數(shù)據(jù)庫

    這篇文章主要介紹了mysql 之通過配置文件鏈接數(shù)據(jù)庫的相關(guān)資料,主要是一個(gè)單例餓漢式的獲得數(shù)據(jù)庫連接方法工具類的實(shí)現(xiàn),需要的朋友可以參考下
    2017-08-08
  • Python?from?import導(dǎo)包ModuleNotFoundError?No?module?named找不到模塊問題解決

    Python?from?import導(dǎo)包ModuleNotFoundError?No?module?named

    最近在執(zhí)行python腳本時(shí),from?import的模塊沒有被加載進(jìn)來,找不到module,這篇文章主要給大家介紹了關(guān)于Python?from?import導(dǎo)包ModuleNotFoundError?No?module?named找不到模塊問題的解決辦法,需要的朋友可以參考下
    2022-08-08
  • Python Sweetviz輕松實(shí)現(xiàn)探索性數(shù)據(jù)分析

    Python Sweetviz輕松實(shí)現(xiàn)探索性數(shù)據(jù)分析

    Sweetviz是一個(gè)開放源代碼Python庫,可生成精美的高密度可視化文件,以單行代碼啟動(dòng)EDA(探索性數(shù)據(jù)分析)。輸出是一個(gè)完全獨(dú)立的HTML應(yīng)用程序,該系統(tǒng)圍繞快速可視化目標(biāo)值和比較數(shù)據(jù)集而構(gòu)建。其目標(biāo)是幫助快速分析目標(biāo)特征,訓(xùn)練與測試數(shù)據(jù)以及其他此類數(shù)據(jù)表征任務(wù)
    2021-11-11
  • python解壓TAR文件至指定文件夾的實(shí)例

    python解壓TAR文件至指定文件夾的實(shí)例

    今天小編就為大家分享一篇python解壓TAR文件至指定文件夾的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • 從零學(xué)Python之入門(四)運(yùn)算

    從零學(xué)Python之入門(四)運(yùn)算

    最近2天,各種不順利,還被一個(gè)油門當(dāng)剎車的憨貨給追尾了,所以本系列發(fā)的比較少,本文是系列的第四篇,講述的是Python的運(yùn)算
    2014-05-05
  • tensorflow實(shí)現(xiàn)tensor中滿足某一條件的數(shù)值取出組成新的tensor

    tensorflow實(shí)現(xiàn)tensor中滿足某一條件的數(shù)值取出組成新的tensor

    今天小編就為大家分享一篇tensorflow實(shí)現(xiàn)tensor中滿足某一條件的數(shù)值取出組成新的tensor,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • Pandas?DataFrame列快速轉(zhuǎn)換為列表(3秒學(xué)會(huì)!)

    Pandas?DataFrame列快速轉(zhuǎn)換為列表(3秒學(xué)會(huì)!)

    這篇文章主要給大家介紹了關(guān)于Pandas?DataFrame列如何快速轉(zhuǎn)換為列表的相關(guān)資料,在Python的pandas庫中可以使用DataFrame的tolist()方法將DataFrame轉(zhuǎn)化為列表,需要的朋友可以參考下
    2023-10-10
  • Python中關(guān)于print和return的區(qū)別

    Python中關(guān)于print和return的區(qū)別

    這篇文章主要介紹了Python中關(guān)于print和return的區(qū)別,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02

最新評論

平定县| 广元市| 梧州市| 兖州市| 获嘉县| 新昌县| 文山县| 额尔古纳市| 西和县| 涟源市| 贵定县| 嘉荫县| 康乐县| 民勤县| 深水埗区| 大渡口区| 晋城| 营口市| 宁晋县| 班玛县| 临城县| 佛学| 工布江达县| 云浮市| 平和县| 高台县| 延津县| 翁牛特旗| 仙桃市| 珲春市| 霸州市| 水城县| 绥滨县| 拜城县| 景德镇市| 临武县| 长丰县| 安顺市| 抚顺市| 驻马店市| 马边|