所以,泛型視圖非常酷,但我感興趣的是一個通用模板。django通用模板
所以舉個例子,我可以給它一個對象,它只是爲我帶來它。
或者如果我給它一個列表,它只會遍歷這些對象,並將它們作爲一個ul(或tr,或其他任何它認爲必需的)來迭代。
對於大多數用途你不需要這個。我只是快速地把一些東西扔給一個朋友(一個酒吧股票應用,如果你必須知道的話),我不想寫模板。
所以,泛型視圖非常酷,但我感興趣的是一個通用模板。django通用模板
所以舉個例子,我可以給它一個對象,它只是爲我帶來它。
或者如果我給它一個列表,它只會遍歷這些對象,並將它們作爲一個ul(或tr,或其他任何它認爲必需的)來迭代。
對於大多數用途你不需要這個。我只是快速地把一些東西扔給一個朋友(一個酒吧股票應用,如果你必須知道的話),我不想寫模板。
如果有它的django模型,你可以堅持到django.contrib.admin
或django.contrib.databrowse
。如果沒有,那麼你可以通過完全跳過django模板來進行管理。例如:
from django.http import HttpResponse
import datetime
def current_datetime(request):
now = datetime.datetime.now()
html = "<html><body>It is now %s.</body></html>" % now
return HttpResponse(html)
但是,當然,你想避免甚至寫那麼多,所以不是做HTML,我們就可以使用純文本和pprint
模塊:
from django.http import HttpResponse
import datetime
from pprint import pformat
def current_datetime(request):
now = datetime.datetime.now()
return HttpResponse(pformat(now), mimetype="text/plain")
編輯:嗯。 ..這看起來像一個視圖修飾器應該處理的東西:
from django.http import HttpResponse
import datetime
import pprint
def prettyprint(fun):
return lambda request:HttpResponse(
pprint.pformat(fun(request)), mimetype="text/plain")
@prettyprint
def current_datetime(request):
return datetime.datetime.now()
我看不到你遠離編寫模板,特別是如果你會想要格式化它,甚至略微。
但是你可以重新使用基本模板,用於例如,創建一個通用object_list.html和object_detail.html
將基本包含的信息來遍歷對象列表並將其顯示,並顯示對象詳情。如果需要,您可以在整個應用程序中使用這些「通用」模板。
這正是我想要的。那會教會我過度複雜。謝謝! – 2009-10-28 19:12:49