0

私のアプリの多くの機能では、

@auth.requires_login()

これは、デコレータを必要とするアクションへのリクエストを処理するためにAuth、モデルで定義されたオブジェクトに関連するすべてのコードを実行する必要があるということですか? そうでない場合、コードの一部の不要な実行を最小限に抑えるために、コードをどのようにリファクタリングする必要がありAuthますか?

4

1 に答える 1

1

ユーザーがログインしているかどうかを確認するためだけに、必ずしもすべての Auth コードを実行する必要はありません。Auth オブジェクトをインスタンス化する必要がありますが、実行する必要はありませんauth.define_tables()(すべての Auth テーブルを定義します)。Auth テーブルを定義しない場合、auth.navbar()ヘルパー関数は auth_user テーブルの属性を参照しようとするため、そのままでは機能しないことに注意してください。回避策として、カスタム navbar 関数を作成するか (いずれにせよ実行したい場合があります)、少なくとも 1 つのテーブルを定義することができます。

于 2012-07-08T03:30:21.133 に答える