しかし、「状態を確認...と異なる見解を呼び出す」する別のオプションは、カスタムビューを使用することですCris McDonough's blog postから
を述語:
def example_dot_com_host(info, request):
if request.host == 'www.example.com:
return True
がカスタム述語だこと。ホスト名がwww.example.comの場合はTrueを返します。ここでは、我々はそれを使用する方法は次のとおりです。ただし
@view_config(route_name='blogentry', request_method='GET')
def get_blogentry(request):
...
@view_config(route_name='blogentry', request_method='POST')
def post_blogentry(request):
...
@view_config(route_name='blogentry', request_method='GET',
custom_predicates=(example_dot_com_host,))
def get_blogentry_example_com(request):
...
@view_config(route_name='blogentry', request_method='POST',
custom_predicates=(example_dot_com_host,))
def post_blogentry_example_com(request):
...
、あなたの特定の問題のために(ユーザーがページを閲覧する権限を持っていない場合はページ内の記号を表示)これを達成するためのより良い方法は以下のようになりset up permissionsにビューのためにそう枠組みは、ユーザーに許可がない場合は例外が発生し、custom view for that exceptionを登録すると、サインインフォームが表示されます。
これは 'raise'でなければなりません。あなたはサブスクライバから何も返せません。 –