DjangoでDateTimeを月や年でリストとして取得する方法
たとえば、blogなどで投稿がある月のみをリスト化したいときに、年・月のリストを取得するときに利用する方法
Entryというテーブルのpub_dateというカラムをリスト取得する場合、
Entry.objects.dates('pub_date', 'year') -> 年でリスト取得
Entry.objects.dates('pub_date', 'month') -> 年・月でリスト取得
昇順でリストを取得したい場合、order='DESC'を引数に追加する
参考サイト
・QuerySet API
2012年1月4日水曜日
DjangoでDateTime型をテンプレート内でフォーマッティングする方法
DjangoでDateTime型のパラメータをテンプレート内で、所望のフォーマットで表示する方法
1.views.pyでは、他の型のパラメータと同じように、Dictionary型をContext型にフォーマッティングして、テンプレートに読み込ませる
テンプレート内では、次のようにフォーマッティングする
参考サイト
・Built in template tags and filters
1.views.pyでは、他の型のパラメータと同じように、Dictionary型をContext型にフォーマッティングして、テンプレートに読み込ませる
- import datetime
- from django.template import loader, Context
- from django.http import HttpResponse
- def index(request):
- param1 = 'test'
- param2 = datetime.datetime.now()
- template = loader.get_template('test.html')
- contexts = Context({'param1':param1,
- 'param2':param2,})
- return template.render(contexts)
import datetime from django.template import loader, Context from django.http import HttpResponse def index(request): param1 = 'test' param2 = datetime.datetime.now() template = loader.get_template('test.html') contexts = Context({'param1':param1, 'param2':param2,}) return template.render(contexts)
テンプレート内では、次のようにフォーマッティングする
- {{ param2|date:"Y/n/d g:i A" }}
{{ param2|date:"Y/n/d g:i A" }}上のように指定すると、「2012/1/4 5:12 PM」と表示される
参考サイト
・Built in template tags and filters
2012年1月1日日曜日
DjangoでSTATIC_URLをテンプレートで使う方法
STATIC_URLをテンプレートで参照できるようにする方法
1.settings.pyに割り当てたいURLを記述する
2.views.pyでテンプレートを呼び出す時にRequestContextを利用する
3.テンプレートファイル(show.html)でSTATIC_URLを使う
{{STATIC_URL}}と指定すると、settings.pyで定義した値を表示できる
1.settings.pyに割り当てたいURLを記述する
- STATIC_URL = 'http://localhost/static'
STATIC_URL = 'http://localhost/static'
2.views.pyでテンプレートを呼び出す時にRequestContextを利用する
- from django.template import RequestContext, loader
- from django.http import HttpResponse
- def show(request):
- template = loader.get_template('show.html')
- contexts = RequestContext({})
- return HttpResponse(template.lender(contexts))
from django.template import RequestContext, loader from django.http import HttpResponse def show(request): template = loader.get_template('show.html') contexts = RequestContext({}) return HttpResponse(template.lender(contexts))
3.テンプレートファイル(show.html)でSTATIC_URLを使う
{{STATIC_URL}}と指定すると、settings.pyで定義した値を表示できる
登録:
投稿 (Atom)