Django框架每次開發的初始化的套路都基本同樣,這裏記錄一下。html
首先安裝Python軟件,上python官網下載對應的安裝包。接下來就是安裝Django:python
pip install django
最新版本的Python都基本自帶pip命令,因此直接就能夠安裝Django。mysql
爲新項目創建一個目錄,在cmd下面運行命令:sql
django-admin startproject <project_name>
安裝MySQL後,進入mysql並運行:數據庫
create database <dbname> character set utf8;
以後還有安裝python的mysql驅動。django
進入django創建好的工程目錄中,有個settings.py文件,編輯此文件中的DATABASES部分。api
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'dbname', 'USER': 'root', 'PASSWORD': '123456', 'HOST': 'localhost', 'PORT': 3306, 'CHARSET': 'utf8', 'OPTIONS': { 'init_command': 'SET sql_mode="STRICT_TRANS_TABLES"' } } }
在命令行下進入項目所在目錄,輸入:瀏覽器
python manage.py makemigrations python manage.py migrate
這樣Django所需的本身的表會在數據庫中創建。 這時能夠到數據庫中查看是否已經有django的本身的表。session
代碼都是在應用中開發,在命令行下進入工程目錄,而後輸入:app
python manage.py startapp <app_name>
以後就會在工程目錄下創建一個應用目錄,下面產生一些初始化的python文件。
模型是用來處理數據的,是程序與數據庫表之間的橋樑,或者能夠看到數據庫表在代碼中的映射,屬於ORM模式。
每一個模型就是一個Python中的class,而且對應一個數據庫表。自定義class須要繼承django.db.models.Model類。成員變量名稱對應數據庫表中字段名稱,使用models.CharField, DateTimeField, IntegerField表明其類型。若是表名與類名不想使用相同的方式,能夠定義一個內部類class Meta: 其中屬性db_table的值爲表名。
模型定義以後,能夠使用命令更新到數據庫中(在數據庫中創建對應的表):
python manage.py makemigrations python manage.py migrate
若是是想從數據庫表導出模型類,那麼使用命令:
python manage.py inspectdb > models.py
修改settings.py中的INSTALLED_APPS選項:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'your_app_name', ]
view方法是在用戶調用URL後,用來處理請求的方法,並返回處理結果。 view方法寫在應用的views.py中,也能夠放在其餘python文件。只是形式爲:
def hello(request): if request.method == 'GET': do_something() elif request.method == 'POST': do_something_else() return HttpResponse("Hello World!", content_type="text/html");
在你的應用中創建urls.py文件,而且創建url對應的view方法。
from django.conf.urls import url from . import views urlpatterns = [ url(r'^hello$', views.hello, name='hello'), ]
而後在把應用的url加入到整個工程的url映射中。修改項目目錄下的urls.py文件:
from django.conf.urls import url, include from django.contrib import admin urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^api/', include('yourappname.urls')), ]
輸入命令:
python manage.py runserver
若是想監聽不一樣IP和端口能夠使用
python manage.py runserver 192.168.0.100:8080
Django自帶了後臺管理頁面,只要使用下面命令創建一個超級管理員用戶:
python manage.py createsuperuser
而後按照提示輸入用戶名,密碼和郵箱就能夠了。
最後打開瀏覽器輸入: http://localhost:8000/admin
@完