-
作为快捷方式,您可以使用方便的
user_passes_test装饰器,它在可调用返回False时执行重定向:from django.contrib.auth.decorators import user_passes_test def email_check(user): return user.email.endswith('@example.com') @user_passes_test(email_check) def my_view(request): ...接受一个必需的参数:如果允许用户查看该页面,则该可调用对象接受一个user_passes_test()对象并返回UserTrue。请注意,不会自动检查user_passes_test()是否不是匿名的。User采用两个可选参数:user_passes_test()login_url- 允许您指定未通过测试的用户将被重定向到的 URL。它可能是一个登录页面,如果您未指定,则默认为
。settings.LOGIN_URL redirect_field_name- 与
相同。将其设置为login_required()None会将其从 URL 中删除,如果您将未通过测试的用户重定向到没有 “next page” 的非登录页面,您可能需要这样做。
例如:
@user_passes_test(email_check, login_url='/login/') def my_view(request): ...
本文介绍 django.contrib.auth.decorators.user_passes_test 的用法。
声明
user_passes_test(test_func, login_url=None, redirect_field_name='next')
相关用法
- Python Tableau users.populate_groups用法及代码示例
- Python Tableau users.populate_workbooks用法及代码示例
- Python Tableau users.remove用法及代码示例
- Python Tableau users.get_by_id用法及代码示例
- Python Tableau users.get用法及代码示例
- Python Tableau users.add用法及代码示例
- Python Tableau users.update用法及代码示例
- Python unittest.mock.AsyncMock.assert_awaited_once_with用法及代码示例
- Python unittest.TestCase.assertWarnsRegex用法及代码示例
- Python urllib.parse.urlparse用法及代码示例
- Python unittest.mock.Mock.__class__用法及代码示例
- Python urllib.parse.urljoin用法及代码示例
- Python unittest.TestCase.assertRaisesRegex用法及代码示例
- Python unittest.mock.call用法及代码示例
- Python unittest.mock.Mock.method_calls用法及代码示例
- Python unittest.mock.Mock.call_args_list用法及代码示例
- Python unittest.mock.AsyncMock.assert_any_await用法及代码示例
- Python unittest.mock.Mock.assert_called用法及代码示例
- Python unittest.TestCase.assertRaises用法及代码示例
- Python unittest.TestCase.tearDownClass用法及代码示例
- Python unittest.mock.Mock.assert_not_called用法及代码示例
- Python unittest.IsolatedAsyncioTestCase用法及代码示例
- Python unittest.TestCase.setUpClass用法及代码示例
- Python urllib.parse.urllib.parse.SplitResult.geturl用法及代码示例
- Python unittest.mock.Mock.mock_calls用法及代码示例
注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.contrib.auth.decorators.user_passes_test。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
