整個(gè)項(xiàng)目已經(jīng)放在Github上, 隨時(shí)更新, 項(xiàng)目地址
項(xiàng)目創(chuàng)建
現(xiàn)在正式開(kāi)始吧, 我們創(chuàng)建一個(gè)名為my_blog
的Django項(xiàng)目
創(chuàng)建項(xiàng)目的指令如下:
$ django-admin.py startproject my_blog
現(xiàn)在來(lái)看一下整個(gè)項(xiàng)目的文件結(jié)構(gòu)
$ tree my_blog #打印樹(shù)形文件結(jié)構(gòu)
my_blog
├── manage.py
└── my_blog
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py
1 directory, 5 files
建立Django app
在
Django
中的app我認(rèn)為就是一個(gè)功能模塊, 與其他的web框架可能有很大的區(qū)別, 將不能功能放在不同的app中, 方便代碼的復(fù)用
建立一個(gè)article
app
$ python manage.py startapp article
現(xiàn)在讓我們重新看一下整個(gè)項(xiàng)目的結(jié)構(gòu)
── article
│ ├── __init__.py
│ ├── admin.py
│ ├── migrations
│ │ └── __init__.py
│ ├── models.py
│ ├── tests.py
│ └── views.py
├── db.sqlite3
├── manage.py
├── my_blog
├── __init__.py
├── __pycache__
│ ├── __init__.cpython-34.pyc
│ ├── settings.cpython-34.pyc
│ ├── urls.cpython-34.pyc
│ └── wsgi.cpython-34.pyc
├── settings.py
├── urls.py
└── wsgi.py
并在my_blog/my_blog/setting.py下添加新建app
INSTALLED_APPS = (
...
'article', #這里填寫的是app的名稱
)
運(yùn)行程序
$ python manage.py runserver #啟動(dòng)Django中的開(kāi)發(fā)服務(wù)器
#如果運(yùn)行上面命令出現(xiàn)以下提示
You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.
#請(qǐng)先使用下面命令
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
運(yùn)行成功后,會(huì)顯示如下信息
#重新運(yùn)行啟動(dòng)Django中的開(kāi)發(fā)服務(wù)器
$ python manage.py runserver
#運(yùn)行成功顯示如下信息
System check identified no issues (0 silenced).
December 21, 2014 - 08:56:00
Django version 1.7.1, using settings 'my_blog.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
現(xiàn)在可以啟動(dòng)瀏覽器, 輸入http://127.0.0.1:8000/, 當(dāng)出現(xiàn)
![成功](http://picturebag.qiniudn.com/Snip20141226_1.png)
成功
說(shuō)明你成功走出了第一步!
命令梳理:
python manage.py <command> [options] #Django Command python manange.py -h幫助文檔
django-admin.py startproject my_blog #創(chuàng)建項(xiàng)目
python manage.py startapp article #創(chuàng)建app