0

ユーザーがデータを配置して新しいオブジェクトを作成できるフォームを作成するcreteView(当時は汎用ビュー)があります。

ここで、私の関数がtrueを返した場合にのみ、このページへのアクセスを制限したいと思います。この関数はユーザーを考慮しないため、ユーザー権限のデコレータは機能しません。関数

is_allowed()

曜日と時刻にいくつかのロジックを実行します。

この関数の一般的なビューを制限するにはどうすればよいですか?コントロールはどこに置くべきですか?

通常のビューの場合、それは簡単です。

if is_allowed():

だから私が思ったのはこのようなことをすることでした(View1はcreteViewです)

def Home(request):
    if is_allowed():
        return View1.as_view()

そうすることで私はこのメッセージを受け取ります

'function' object has no attribute 'has_header'

私に何ができる?

4

1 に答える 1

0

一般的なビューの装飾に関するドキュメントがあります。

ビュー基本クラスのさまざまな関数をオーバーライドして、チェックを追加することもできます。たとえば、dispatchをオーバーライドできます。

于 2012-11-09T18:15:04.193 に答える