4

私はまだピラミッドを学んでおり、デコレータの使用方法を学ぼうとしているところです。以下は、私のテスト ビュー callable のコピーです。

from pyramid.response import Response
from pyramid.view import view_config
from pyramid.renderers import render_to_response

def my_blog(request):
    return {'project':'tricky'}

@view_config( renderer='templates/foo.pt' )
def foo_blog(request):
    return {'name':'tricky'}

view_config デコレーターについて私が理解していることから、構成ファイルで実際に設定しなくても、アプリケーション構成を設定するために使用できます。この例の場合、レンダラーを templates/foo.pt に設定しています。これは機能しません。

ただし、構成ファイル ( init .py) でレンダラーを次のように設定した場合:

config.add_route( 'foo_blog' , '/blog/{foo}' ,  view='tricky.views.Blog.blog.foo_blog' renderer='tricky:templates/mytemplate.pt' )

それが動作します。

デコレータを使用できなくなっている何か間違ったことをしていますか? ありがとう!

4

1 に答える 1

7

@view_configを介して追加された構成を機能させるには、ある時点でconfig.scan()を呼び出す必要があります。

于 2011-05-01T13:55:02.347 に答える