Django安裝

python下載地址 http://www.python.org/download/releases/3.3.4/

Django的下載地址:https://www.djangoproject.com/download/


1)安裝(進到解壓目錄)

python setup.py install


2、配置環境變量(PATH)

C:/Python27/Lib/site-packages/django;C:/Python27/Scripts;


3、檢查是否安裝成功,可以在dos下進入Django-1.7.11目錄查看Django版本。

1.輸入python?

2.輸入import django

3.輸入django.get_version()


創建Django工程

參考教程 http://www.cnblogs.com/qinjiting/p/4678893.html


Django常用命令

1)創建Django工程(進入項目路徑)

django-admin startproject mysite


創建的目錄解析

1mysite/ ? ?#mysite包,整個程序的一個配置文件

2 ? ?__init__.py

? ?settings.py ?#Django的配置文件

3 ? ?urls.py ? ? ?#路由器的url映射

4 ? ?wsgi.py ? ? ?#python提代服務端的模塊,封裝的一個接口

5manage.py ? ? ? ?#啟動文件,啟動socker服務端,程序管理入口




2)運行Django程序(進入項目文件)

python manage.py runserver ?或 ?默認8000端口

python manage.py runserver 0.0.0.0:9000?


在pycharm里配置

run -> edit configurations

runserver 0.0.0.0:8000


3)創建app(一個app就是一個網站)

python manage.py startapp web


創建的目錄內容解析:

1web/

2 ? ?__init__.py

? ?admin.py ? ? #Django提供的后臺管理

3 ? ?models.py ? ?#數據庫操作相關的東西

4 ? ?tests.py ? ? #測試用的

5 ? ?views.py ? ? #邏輯的處理


Django是MTV模式,MTV就是規范操作的一種模式

MTV解析

M :Model ? ?#數據庫相關的東西放在Model里面

T:template ?#存放html模板相關的東西,template需要自已建,template可以在最外層建一個telplate文件夾,也可以在一個app里面建一個telplate文件夾,在最外層所有app共用一個telplate文件夾

v:views ? ? #邏輯的處理


Diango框架揭秘

1、創建app

2、url映射

3、處理url的函數

4、運行django程序

5、訪問url


Diango路由系統

1、全局url里做分發 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), #所有的請求都交給active這個函數去處理


)



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數字,w字母和數字,這邊寫了jenkins,那么那邊傳參也要寫jenkins

? ? url(r'^login/(?P<jenkins>\d*)/', login,{'doc':333}), ?#后面第二位參數不加,默認就會輸出333

)



3、views模塊配置(邏輯處理模塊,請求的函數處理)

#!/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')


創建數據庫表

1、數據庫里面創建數據庫

2、配置文件settings連接數據庫

? ?39行添加app ?這里假設app名字叫做web

? ?web

? ?粘貼以下內容替換59行

DATABASES = {

? ? 'default': {

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

? ? 'NAME':'dbname',

? ? 'USER': 'root',

? ? 'PASSWORD': 'xxx',

? ? 'HOST': '',

? ? 'PORT': '',

? ? }

}


3、創建model,繼承自models.Model類

web app下操作

web.models

靜態字段 =?

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') ?#長字符串

? ? CreateDate = models.DateTimeField(default = '2016-9-24 12:12') #日期類型


? ?#default

4、終端上的做法

同步數據庫

python manage.py syncdb


注意:Django 1.7.1及以上的版本需要用以下命令

首先執行 ?python manage.py makemigrations

再執行 ? ?python manage.py migrate

選擇1,輸入字段值


備注:對已有的 models 進行修改,Django 1.7之前的版本的Django都是無法自動更改表結構的,不過有第三方工具 south,詳見 Django 數據庫遷移 一節。

5、修改model

? ? ??

6、再執行步驟4?