私はジャンゴを使用しています。django ユーザー アクセス レベルに基づいて使用するテンプレートを設定しようとしています。ご覧のとおり、LoginRequiredMixin と generic.TemplateView を使用しています。
これは私がやりたいことです:
このコードは、views.py で使用されます。
class TableView(LoginRequiredMixin, generic.TemplateView):
if user.is_superuser == True:
template_name = 'achtable.html'
elif user.is_authenticated:
template_name = 'userachtable.html'
残念ながら、ユーザーにアクセスできないようです。このように。
views.py には、ユーザー認証に基づいて期待どおりに機能する API ビューもあります。それは次のとおりです。
class MyList(LoginRequiredMixin, generics.ListCreateAPIView):
serializer_class = MySerializer
def get_queryset(self):
if self.request.user.is_superuser==True:
queryset = ImportantStuff.objects.all()
return queryset
elif self.request.user.is_authenticated():
queryset = ImportantStuff.objects.all()
return queryset.filter(claimed=False)
どんな入力でも大歓迎です。ありがとうございました。