Django框架基础学习
Django安裝
python下載地址 http://www.python.org/download/releases/3.3.4/
Django的下載地址:https://www.djangoproject.com/download/
1)安裝(進(jìn)到解壓目錄)
python setup.py install
2、配置環(huán)境變量(PATH)
C:/Python27/Lib/site-packages/django;C:/Python27/Scripts;
3、檢查是否安裝成功,可以在dos下進(jìn)入Django-1.7.11目錄查看Django版本。
1.輸入python?
2.輸入import django
3.輸入django.get_version()
創(chuàng)建Django工程
參考教程 http://www.cnblogs.com/qinjiting/p/4678893.html
Django常用命令
1)創(chuàng)建Django工程(進(jìn)入項(xiàng)目路徑)
django-admin startproject mysite
創(chuàng)建的目錄解析
1mysite/ ? ?#mysite包,整個(gè)程序的一個(gè)配置文件
2 ? ?__init__.py
? ?settings.py ?#Django的配置文件
3 ? ?urls.py ? ? ?#路由器的url映射
4 ? ?wsgi.py ? ? ?#python提代服務(wù)端的模塊,封裝的一個(gè)接口
5manage.py ? ? ? ?#啟動(dòng)文件,啟動(dòng)socker服務(wù)端,程序管理入口
2)運(yùn)行Django程序(進(jìn)入項(xiàng)目文件)
python manage.py runserver ?或 ?默認(rèn)8000端口
python manage.py runserver 0.0.0.0:9000?
在pycharm里配置
run -> edit configurations
runserver 0.0.0.0:8000
3)創(chuàng)建app(一個(gè)app就是一個(gè)網(wǎng)站)
python manage.py startapp web
創(chuàng)建的目錄內(nèi)容解析:
1web/
2 ? ?__init__.py
? ?admin.py ? ? #Django提供的后臺(tái)管理
3 ? ?models.py ? ?#數(shù)據(jù)庫(kù)操作相關(guān)的東西
4 ? ?tests.py ? ? #測(cè)試用的
5 ? ?views.py ? ? #邏輯的處理
Django是MTV模式,MTV就是規(guī)范操作的一種模式
MTV解析
M :Model ? ?#數(shù)據(jù)庫(kù)相關(guān)的東西放在Model里面
T:template ?#存放html模板相關(guān)的東西,template需要自已建,template可以在最外層建一個(gè)telplate文件夾,也可以在一個(gè)app里面建一個(gè)telplate文件夾,在最外層所有app共用一個(gè)telplate文件夾
v:views ? ? #邏輯的處理
Diango框架揭秘
1、創(chuàng)建app
2、url映射
3、處理url的函數(shù)
4、運(yùn)行django程序
5、訪問(wèn)url
Diango路由系統(tǒng)
1、全局url里做分發(fā) mysite\urls.py
? ?url --> urls.py文件
#!/usr/bin/env python
#coding:utf-8
from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
#def active(request):
# ? ?pass
urlpatterns = patterns('',
? ? # Examples:
? ? # url(r'^$', 'mysite.views.home', name='home'),
? ? # url(r'^blog/', include('blog.urls')),
? ? url(r'^admin/', include(admin.site.urls)),
? ? url(r'^web/', include('web.urls')),
? ? #url(r'^',active), #所有的請(qǐng)求都交給active這個(gè)函數(shù)去處理
)
2'web.urls做配置
#!/usr/bin/env python
#coding:utf-8
from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
from web.views import wsyht,list,login
urlpatterns = patterns('',
? ? # Examples:
? ? # url(r'^$', 'mysite.views.home', name='home'),
? ? # url(r'^blog/', include('blog.urls')),
? ? url(r'^wsyht/', wsyht),
? ? url(r'^list/(\d*)/(\d*)/', list),
? ? url(r'^login/(?P<jenkins>\d*)/(?P<doc>\w*)/', login), ?#正則表達(dá)式d數(shù)字,w字母和數(shù)字,這邊寫了jenkins,那么那邊傳參也要寫jenkins
? ? url(r'^login/(?P<jenkins>\d*)/', login,{'doc':333}), ?#后面第二位參數(shù)不加,默認(rèn)就會(huì)輸出333
)
3、views模塊配置(邏輯處理模塊,請(qǐng)求的函數(shù)處理)
#!/usr/bin/env python
#coding:utf-8
from django.shortcuts import render
from django.http.response import HttpResponse
# Create your views here.
def wsyht(request): ?#必須要有request
? ? return HttpResponse('index')
def list(request,id1,id2): ?#必須要有request
? ? print id1,id2
? ? return HttpResponse('list')
def login(request,doc,jenkins): ?#必須要有request
? ? print doc,jenkins
? ? return HttpResponse('login')
創(chuàng)建數(shù)據(jù)庫(kù)表
1、數(shù)據(jù)庫(kù)里面創(chuàng)建數(shù)據(jù)庫(kù)
2、配置文件settings連接數(shù)據(jù)庫(kù)
? ?39行添加app ?這里假設(shè)app名字叫做web
? ?web
? ?粘貼以下內(nèi)容替換59行
DATABASES = {
? ? 'default': {
? ? 'ENGINE': 'django.db.backends.mysql',
? ? 'NAME':'dbname',
? ? 'USER': 'root',
? ? 'PASSWORD': 'xxx',
? ? 'HOST': '',
? ? 'PORT': '',
? ? }
}
3、創(chuàng)建model,繼承自models.Model類
web app下操作
web.models
靜態(tài)字段 =?
username = models.CharField(max_length=50)
例:
from django.db import models
# Create your models here.
class UserInfo(models.Model):
? ? username = models.CharField(max_length=50) ?
? ? password = models.CharField(max_length=50) ?#字符串
? ? Gender = models.BooleanField(default = False) ?#布爾類型
? ? age = models.IntegerField(default = 26) ?#整型
? ? memo = models.TextField(default = 'xxx') ?#長(zhǎng)字符串
? ? CreateDate = models.DateTimeField(default = '2016-9-24 12:12') #日期類型
? ?#default
4、終端上的做法
同步數(shù)據(jù)庫(kù)
python manage.py syncdb
注意:Django 1.7.1及以上的版本需要用以下命令
首先執(zhí)行 ?python manage.py makemigrations
再執(zhí)行 ? ?python manage.py migrate
選擇1,輸入字段值
備注:對(duì)已有的 models 進(jìn)行修改,Django 1.7之前的版本的Django都是無(wú)法自動(dòng)更改表結(jié)構(gòu)的,不過(guò)有第三方工具 south,詳見 Django 數(shù)據(jù)庫(kù)遷移 一節(jié)。
5、修改model
? ? ??
6、再執(zhí)行步驟4?
轉(zhuǎn)載于:https://blog.51cto.com/yht1990/1856444
總結(jié)
以上是生活随笔為你收集整理的Django框架基础学习的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 已婚男人梦到蛇是什么意思
- 下一篇: 孕妇梦到去上坟是什么意思