欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python框架django基礎(chǔ)指南

 更新時(shí)間:2016年09月08日 08:52:48   投稿:hebedich  
本文給大家匯總介紹了下python的MVC框架django的一些基礎(chǔ)知識,非常的簡單實(shí)用,希望對大家學(xué)習(xí)django能夠有所幫助。

Django簡介:

Django是一個(gè)開放源代碼的Web應(yīng)用框架,由Python寫成。采用了MVC的框架模式,即模型M,視圖V和控制器C。不過在Django實(shí)際使用中,Django更關(guān)注的是模型(Model)、模板(Template)和視圖(Views),稱為 MTV模式。Django的主要目的是簡便、快速的開發(fā)數(shù)據(jù)庫驅(qū)動(dòng)的網(wǎng)站,它強(qiáng)調(diào)代碼復(fù)用,多個(gè)組件可以很方便的以“插件”形式服務(wù)于整個(gè)框架,Django有許多功能強(qiáng)大的第三方插件。

django是對象關(guān)系映射的 (ORM,object-relational mapping):以Python類形式定義你的數(shù)據(jù)模型,ORM將模型與關(guān)系數(shù)據(jù)庫連接起來,你可以通過簡單的API操作數(shù)據(jù)庫,同時(shí)你也可以在Django中使用原始的SQL語句。Django可以運(yùn)行在Apache上,也可以運(yùn)行在支持WSGI,F(xiàn)astCGI的服務(wù)器上。支持多種數(shù)據(jù)庫,已經(jīng)支持Postgresql,MySql, Sqlite3,Oracle。

django安裝

pip install Django

驗(yàn)證django的安裝

import django
django.get_version()


創(chuàng)建一個(gè)django工程

django-admin.py startproject mysite

此時(shí)會(huì)自動(dòng)生成一些目錄和文件,最外層的manage.py,像是一個(gè)運(yùn)行的入口,通過命令行的調(diào)用可以完成一些常用的功能,比如:

運(yùn)行django的自帶的web服務(wù)器:

python manage.py runserver http://127.0.0.1:8080

常用的同步或創(chuàng)建數(shù)據(jù)庫表:

python manage.py syncdb

創(chuàng)建django project里面的子項(xiàng)目

python manage.py startapp polls

創(chuàng)建超級管理員:

python manage.py createsuperuser

還有setttings.py文件,是django的配置文件。

urls.py文件,是django用于匹配url的文件,哪個(gè)網(wǎng)址執(zhí)行哪些后臺代碼(view)是在這里定義的。

Django MTV模式之----modle模型

Django采用了orm模式(對象關(guān)系映射),django的模型根據(jù)數(shù)據(jù)庫表的內(nèi)容定義了一個(gè)python類,這個(gè)類里面的成員和每一個(gè)數(shù)據(jù)庫表里的字段一一對應(yīng);

類里面的成員類型也和數(shù)據(jù)庫表里的字段類型也是對應(yīng)的,名字其實(shí)也可以起的一樣,看起來比較直觀。這樣每個(gè)類實(shí)例就代表了數(shù)據(jù)庫里面的一條數(shù)據(jù)。

模型例子(在models.py里定義):

from django.db import models

class Poll(models.Model):
  question = models.CharField(max_length=200)
  pub_date = models.DateTimeField('date published')

class Choice(models.Model):
  poll = models.ForeignKey(Poll)d
  choice_text = models.CharField(max_length=200)
  votes = models.IntegerField(default=0)

django設(shè)置數(shù)據(jù)庫:

settings.py文件里面的database可以定義你要使用的數(shù)據(jù)庫類型,比如:

定義數(shù)據(jù)庫為sqlite

'ENGINE': 'django.db.backends.sqlite3'

定義數(shù)據(jù)庫為mysql

'ENGINE': 'django.db.backends.mysql'

執(zhí)行django-admin.py startproject mysite, 然后再python manage.py runserver http://127.0.0.1:8080就算搭建了最簡單的一個(gè)django web服務(wù)器,可通過 http://127.0.0.1:8080訪問測試。另外在install_apps里面激活應(yīng)用,執(zhí)行pyhton manage.py syncdb,此時(shí)會(huì)根據(jù)定義的模型創(chuàng)建相應(yīng)的數(shù)據(jù)庫。

數(shù)據(jù)庫操作例子:(假設(shè)File為定義的模型類)

獲取所有數(shù)據(jù):

all_filelist = File.objects.all()

獲取所有數(shù)據(jù)并按某個(gè)字段排序:

all_filelist = File.objects.all().order_by('-id')

執(zhí)行sql語句:

cursor = connection。cursor()
cursor.extcute("select * from info_path")
chaannels = cursor.fetchall()


過濾數(shù)據(jù):

list=File.objects.all().filter(xxx=xxx)

根據(jù)主鍵查詢

list=File.objects.all().get(id=1)

時(shí)間過濾:

results = File.objects.all().filter(time__range=(dayfrom, dayto))

創(chuàng)建新數(shù)據(jù):

file = File(time=time,path=path,result=result)
file.save()

獲取數(shù)據(jù):

file.time
file.path

相關(guān)文章

  • Python+Appium實(shí)現(xiàn)自動(dòng)搶微信紅包

    Python+Appium實(shí)現(xiàn)自動(dòng)搶微信紅包

    不知從何時(shí)開始微信紅包橫空出世,對于網(wǎng)速和手速慢的人只能在一旁觀望,做為python的學(xué)習(xí)者就是要運(yùn)用編程解決生活和工作上的事情。于是我用python解決我們的手速問題python實(shí)現(xiàn)自動(dòng)搶微信紅包,至于網(wǎng)速慢得那就只能自己花錢提升了。
    2021-05-05
  • Python調(diào)用SMTP服務(wù)自動(dòng)發(fā)送Email的實(shí)現(xiàn)步驟

    Python調(diào)用SMTP服務(wù)自動(dòng)發(fā)送Email的實(shí)現(xiàn)步驟

    這篇文章主要介紹了Python調(diào)用SMTP服務(wù)自動(dòng)發(fā)送Email的實(shí)現(xiàn)步驟,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-02-02
  • 構(gòu)建高效的python requests長連接池詳解

    構(gòu)建高效的python requests長連接池詳解

    這篇文章主要介紹了構(gòu)建高效的python requests長連接池詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • django配置連接數(shù)據(jù)庫及原生sql語句的使用方法

    django配置連接數(shù)據(jù)庫及原生sql語句的使用方法

    這篇文章主要給大家介紹了關(guān)于django配置連接數(shù)據(jù)庫,以及原生sql語句的使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Python利用matplotlib實(shí)現(xiàn)餅圖繪制

    Python利用matplotlib實(shí)現(xiàn)餅圖繪制

    Pyplot作為Matplotlib的子庫,提供了和MATLAB差不多的繪圖API。因此Pyplot作為常用的繪圖模塊,能很方便讓用戶繪制2D圖表。本文將為大家介紹如何利用Matplotlib繪制餅圖,感興趣的小伙伴可以了解一下
    2021-12-12
  • python部署chineseocr_lite的實(shí)現(xiàn)示例

    python部署chineseocr_lite的實(shí)現(xiàn)示例

    本文主要介紹了python部署chineseocr_lite的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Python中的引用和拷貝淺析

    Python中的引用和拷貝淺析

    這篇文章主要介紹了Python中的引用和拷貝淺析,本文同時(shí)講解了深拷貝和淺拷貝、引用計(jì)數(shù)和垃圾回收等內(nèi)容,需要的朋友可以參考下
    2014-11-11
  • 對django中foreignkey的簡單使用詳解

    對django中foreignkey的簡單使用詳解

    今天小編就為大家分享一篇對django中foreignkey的簡單使用詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • python八皇后問題的解決方法

    python八皇后問題的解決方法

    這篇文章主要為大家詳細(xì)介紹了python八皇后問題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • python庫TextDistance量化文本之間的相似度算法探究

    python庫TextDistance量化文本之間的相似度算法探究

    這篇文章主要為大家介紹了python庫TextDistance量化文本之間的相似度算法探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01

最新評論