安裝Django
本次參考:http://www.jb51.net/article/42870.htm
http://blog.csdn.net/styyzxjq2009/article/details/39585323
http://www.runoob.com/django/django-model.html
pip 版本:9.0.1
django版本:1.11.2
本次采用pip安裝
pip install django
要連接mysql需要mysqp-python包,
mysql-python安裝:http://www.itdecent.cn/p/9ecf885013d6
創(chuàng)建第一個django項目
django-admin.py startproject HelloWorld
創(chuàng)建完成后我們可以查看下項目的目錄結(jié)構(gòu):
$ cd HelloWorld/
$ tree
.
|-- HelloWorld
| |-- __init__.py
| |-- settings.py
| |-- urls.py
| `-- wsgi.py
`-- manage.py
目錄說明:
HelloWorld: 項目的容器。
manage.py: 一個實用的命令行工具,可讓你以各種方式與該 Django 項目進(jìn)行交互。
HelloWorld/init.py: 一個空文件,告訴 Python 該目錄是一個 Python 包。
HelloWorld/settings.py: 該 Django 項目的設(shè)置/配置。
HelloWorld/urls.py: 該 Django 項目的 URL 聲明; 一份由 Django 驅(qū)動的網(wǎng)站"目錄"。
HelloWorld/wsgi.py: 一個 WSGI 兼容的 Web 服務(wù)器的入口,以便運行你的項目。
啟動項目
接下來我們進(jìn)入 HelloWorld 目錄輸入以下命令,啟動服務(wù)器:
python manage.py runserver 0.0.0.0:8000
報錯:啟動django后,不能訪問,報400錯誤。
原因:沒有開啟允許訪問
處理:編輯HelloWorld目錄下setting.py ,把其中的
ALLOWED_HOSTS=[]改成ALLOWED_HOSTS=['*'] ## * 表示任意地址。頁面400
Django 提供了基于 web 的管理工具。
Django 自動管理工具是 django.contrib 的一部分。你可以在項目的 settings.py 中的 INSTALLED_APPS 看到它:
/HelloWorld/HelloWorld/settings.py 文件代碼:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',)
django.contrib是一套龐大的功能集,它是Django基本代碼的組成部分。
激活管理工具
通常我們在生成項目時會在 urls.py 中自動設(shè)置好,我們只需去掉注釋即可。
配置項如下所示:
/HelloWorld/HelloWorld/urls.py 文件代碼:
# urls.pyfrom django.conf.urls import urlfrom django.contrib import admin
urlpatterns = [ url(r'^admin/', admin.site.urls),]
當(dāng)這一切都配置好后,Django 管理工具就可以運行了。
使用管理工具
啟動開發(fā)服務(wù)器,然后在瀏覽器中訪問 http://127.0.0.1:8000/admin/,得到如下界面:

創(chuàng)建django-admin管理員賬號
你可以通過命令 python manage.py createsuperuser 來創(chuàng)建超級用戶,如下所示:
#cd HelloWord
# python manage.py createsuperuserUsername
(leave blank to use 'root'): admin
Email address: admin@runoob.com
Password:
Password (again):
Superuser created successfully.
[root@solar HelloWorld]#
#如果運行上面命令出現(xiàn)以下提示
You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.
#請先使用下面命令
python manage.py migrate
#輸出如下信息
Operations to perform:
Apply all migrations: contenttypes, sessions, admin, auth
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying sessions.0001_initial... OK
之后輸入用戶名密碼登錄,界面如下:

創(chuàng)建Django app 相當(dāng)于項目的名稱,后面在models.py中定義的class(表名)數(shù)據(jù)庫中會以app名稱命名開始
一個項目中包含一個或多個這樣的app。app可以理解為一塊功能集合。比如產(chǎn)品管理模塊就包含增刪該查等功能,可以把產(chǎn)品管理叫做一個app。每個Django app都有獨立的models,views等,易移植和被復(fù)用。
DOS進(jìn)入項目目錄 執(zhí)行
cd HelloWorld
python manage.py startapp products
products/
__init__.py
models.py
tests.py
views.py