一,建立專案
1, 為blog建立名為mysite的工程專案:
django-admin.py startproject mysite
2, 專案結構如下:
mysite
├── manage.py
└── mysite
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py
二 ,執行開發伺服器
要馬上檢視django專案應用的執行,可以使用django專案裡的mange.py
切換到工程目錄,執行執行伺服器命令:
python manage.py runserver
完成:
三,建立blog應用
blog應用檔案結構如下:
├── blog
│ ├── admin.py
│ ├── __init__.py
│ ├── models.py
│ ├── tests.py
│ └── views.py
四,設計的model
在blog目錄下的models.py是blog應用的心檔案之一,是定義blog資料結構的地方。
用編輯器開啟models.py
新添blogpost類,代如下:
from django.db import models
# create your models here.
class blogpost(models.model):
title = models.charfield(max_length = 150)
body = models.textfield()
timestamp = models.datetimefield()
blogpost類是django.db.models.model的乙個子類 。它有變數title(blog的題),body(blog的內容部分),timestamp(blog的發表時間)。
五,設定資料庫
dajango支援主流的資料庫伺服器(mysql,postgresql,oracle和mssql),但本專案使用sqlite,這裡之需要通過一條簡單的命令可以建立sqlite資料庫。
建立資料庫:
切換到工程主目錄mysite/下,執行如下命令:
python manage.py syncdb
出現下面的提示,輸入yes,然後按照提示輸入相關的資訊。完成後會生成乙個資料庫檔案db.sqlite3
六,設定自動admin應用
1,開啟mysite/mysite/urls.py,取消注釋url(r'^admin/', include(admin.site.urls))
添後的代如下:
2,修改mysite/blog/models.py
在最後添一行代:
admin.site.register(blogpost)
models.py完整的代如下:
from django.db import models
from django.contrib import admin
# create your models here.
class blogpost(models.model):
title = models.charfield(max_length = 150)
body = models.textfield()
timestamp = models.datetimefield()
admin.site.register(blogpost)
3 ,開啟瀏覽器,輸入輸入剛才建立資料庫時候填寫的帳號就能進入admin介面。
七,試用admin
1, 點選blog posts右側的add 按鈕,添乙個帖子。
2,讓admin的blogpost介面更美觀
修改blog應用的models.py,為它添乙個admin.modeladmin的子類blogpostadmin.以列表形式顯示blogpost的題和時間。
from django.db import models
from django.contrib import admin
# create your models here.
class blogpost(models.model):
title = models.charfield(max_length = 150)
body = models.textfield()
timestamp = models.datetimefield()
class blogpostadmin(admin.modeladmin):
list_display = ('title','timestamp')
admin.site.register(blogpost,blogpostadmin)
八,建立blog的公共部分
從django的角度看,乙個頁面具有三個典型的元件:
1,建立模板
在blog目錄下建立template目錄(mysite/blog/templates),建立模板檔案archive.html,它的內容如下:
}
}
2,建立乙個檢視函式
3,建立乙個url模式
第一步,在mysite/urls.py裡面取消下面的一行注釋:
#
把它變成:
url(r'^blog/', include('blog.urls')),
第二步:在blog應用裡面定義url,建立乙個urls.py(mysite/blog/urls.py)
from django.conf.urls import *
from blog.views import archive
urlpatterns = patterns('',
url(r'^$',archive),
)
最後,在瀏覽器輸入如下位址
九,最後的潤色
1,模板的精確定位
在mysite/blog/templates目錄裡建立乙個叫base.html的模板
2,修改archive.html模板,讓它引用base.html模板和它的「content」塊。
}}
重新整理瀏覽器可以看到效果如下:
3,按日期排序
修改blog 應用下的models.py,為blogpost添乙個meta巢狀類。如下:
class blogpost(models.model):
title = models.charfield(max_length = 150)
body = models.textfield()
timestamp = models.datetimefield()
class meta:
ordering = ('-timestamp',)
重新整理瀏覽器,如下: Django 快速搭建簡單的Blog
一,建立專案 我這裡是基於python虛擬環境下做的開發,先進入虛擬環境 workon py3 django 1,為blog建立名為mysite的工程專案 django admin.py startproject mysite cd到專案資料夾 cd mysite 3.建立mysql資料庫 mysq...
快速搭建django專案
將 orm 模型對映到資料庫中,總結起來就是以下幾步 在 settings.py 中,配置好 databases 做好資料庫相關的配置。在命令列終端,進入到專案所在的路徑,然後執行命令 python manage.py makemigrations 來生成遷移指令碼檔案。同樣在命令列中,執行命令 p...
使用Django快速搭建簡單的資料管理後台
需求描述 資料表已建好,能視覺化操作增刪改查,避免直接運算元據庫 簡版的管理系統pip install djangopip install mysqlclientdjango admin startproject myprojectcd myproject settings.py databases...