1

特別なフォームの繰り返し作成を解決するために、テンプレートタグを作成しました。ロジックに問題が発生したため、pdb.set_trace() を挿入してそのルートに到達しました。しかし、奇妙なことに、この set_trace() は、テンプレートタグを呼び出したときに実行されないようです。タグは次のようになります。

@register.tag('get_loop_form')
def get_loop_form(parser,token):

    import pdb;pdb.set_trace()

    #put some logic here

    return GetLoopForm()

そして、私は単に次のようにテンプレートでそれを呼び出します:

{% get_loop_form %}

通常、set_trace() の行でスクリプトを操作する機会があります。set_trace() を GetLoopF​​orm.render メソッドに挿入すると機能しますが、get_loop_form に挿入すると機能しません。なぜだめですか?

編集: Django 開発サーバーを手動で再起動した結果、上記のコードが機能しました。なぜこれが起こったのか、私はまだ理解していません。

4

1 に答える 1

0

これはテンプレート タグであるため、サーバーの起動時にキャッシュされる可能性があります。サーバーを再起動してみてください。これで問題が解決するはずです。

于 2012-02-12T11:17:52.977 に答える