.. _tutorial:
==============
チュートリアル
==============
django-bpmobileを利用してみましょう。
bpmobileを有効にする
====================
まず、 ``django-admin.py startproject`` コマンドでプロジェクトを作成しておき、以下の手順でbpmobileを有効にします。
``settings.py`` の ``INSTALLED_APPS`` に ``bpmobile`` を追加します。
.. code-block:: python
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'bpmobile', # added
)
``settings.py`` の ``MIDDLEWARE_CLASSES`` に必要なミドルウェアクラスを追加します。
.. code-block:: python
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'bpmobile.middleware.BPMobileMiddleware', # added
'bpmobile.middleware.BPMobileConvertResponseMiddleware', # added
)
``settings.py`` の ``TEMPLATE_CONTEXT_PROCESSORS`` に必要なコンテキストプロセッサを追加します。
.. code-block:: python
from django.conf import global_settings
TEMPLATE_CONTEXT_PROCESSORS = global_settings.TEMPLATE_CONTEXT_PROCESSORS + (
'bpmobile.context_processors.agent', # added
)
``TEMPLATE_CONTEXT_PROCESSORS`` は、生成された ``settings.py`` では省略されているので上記のように書いています。
以上でbpmobileが有効になります。
ビューでキャリアの判定を行う
============================
``manage.py startapp`` コマンドで ``myapp`` という名前のアプリケーションを作成して、 ``INSTALLED_APPS`` に追加しておきます。
プロジェクトの ``urls.py`` で `myapp.views.my_view` を追加しておきます。
.. code-block:: python
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^$', 'myapp.views.my_view'),
)
``myapp/views.py`` にmy_viewを実装します。
.. code-block:: python
# coding:utf-8
from django.http import HttpResponse
def my_view(request):
if request.agent.is_docomo():
return HttpResponse(u'DoCoMoです。')
elif request.agent.is_ezweb():
return HttpResponse(u'EZWebです。')
elif request.agent.is_softbank():
return HttpResponse(u'SoftBankです。')
else:
return HttpResponse(u'その他です。')
``manage.py runserver`` コマンドを実行して、ウェブブラウザで確認してみましょう。通常、PCからの場合には "その他です。" と表示されるはずです。他のAgentを試す場合には、\ `firemobilesimulator