之前沒接觸Python Web架構Django,今天下午抽1小時時間嘗試了一下,總結一下,供各位和我一樣的Django新手們閱讀,如果有問題,請高手們指教。
1.安裝 Django
1.按照以下步驟下載下傳并安裝 Django, 多種下載下傳安裝方式:
1).直接下載下傳安裝:
root@localhost svn co http://code.djangoproject.com/svn/django/trunk/ django_src
root@localhost cd django_src
root@localhost python setup.py install
2).或者通過安裝包下載下傳安裝:
下載下傳:https://www.djangoproject.com/download/1.5.1/tarball/
tar xzvf Django-1.5.1.tar.gz
cd Django-1.5.1
sudo python setup.py install
3).也可以通過git安裝:
git clone https://github.com/django/django.git
4)通過pip安裝:
pip install Django==1.5.1
如果裝了之後有問題,建議直接閱讀:https://docs.djangoproject.com/en/stable/intro/install/,這裡有詳細的安裝辦法。
2. 使用 Django 管理工具
Django 管理工具
在安裝 Django 之後,您現在應該已經有了可用的管理工具 django-admin.py。下面是給出了這個管理工具中可以使用的一些指令:
[root@localhost mysite]# django-admin.py
Usage: django-admin.py subcommand [options] [args]
Options:
-v VERBOSITY, --verbosity=VERBOSITY
Verbosity level; 0=minimal output, 1=normal output,
2=verbose output, 3=very verbose output
--settings=SETTINGS The Python path to a settings module, e.g.
"myproject.settings.main". If this isn't provided, the
DJANGO_SETTINGS_MODULE environment variable will be
used.
--pythonpath=PYTHONPATH
A directory to add to the Python path, e.g.
"/home/djangoprojects/myproject".
--traceback Print traceback on exception
--version show program's version number and exit
-h, --help show this help message and exit
Type 'django-admin.py help <subcommand>' for help on a specific subcommand.
Available subcommands:
[django]
cleanup
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
runfcgi
runserver
shell
sql
sqlall
sqlclear
sqlcustom
sqldropindexes
sqlflush
sqlindexes
sqlinitialdata
sqlsequencereset
startapp
startproject
syncdb
test
testserver
validate
3.檢視目前Django版本情況:
python -c "import django; print(django.get_version())"
4.建立工程:
django-admin.py startproject mysite
可見結構如下:
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
Wsgi.py
5.啟動服務:
python manage.py runserver
python manage.py runserver 8080
python manage.py runserver 0.0.0.0:8000
可以看到Web如下:

6.配置資料庫:
python manage.py syncdb
7.建立應用程式:
python manage.py startapp polls
應用程式結構:
polls/
__init__.py
models.py
tests.py
Views.py
8.編輯 polls/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)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
9.再次編輯settings.py 檔案, 修改INSTALLED_APPS 設定包含 'polls'. 如下:
NSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
# 'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
'polls',
)
10.現在Django知道了所包含的應用 polls.我們可以通過如下指令運作它:
python manage.py sql polls
我們可以看到如下資訊提示:
現在再次運作 syncdb來向我們的資料庫中建立子產品及相關表:
python manage.py syncdb