从django中的设置文件设置用户权限
我的从django中的设置文件设置用户权限,django,Django,我的settings.py文件中有以下菜单: ADMIN_MENU = [ { 'name': 'Users', 'models': [ 'User', 'Message', 'Payment', ], 'icon': 'icon-user' }, { 'name': 'Inventory', 'model
settings.py
文件中有以下菜单:
ADMIN_MENU = [
{
'name': 'Users',
'models': [
'User',
'Message',
'Payment',
],
'icon': 'icon-user'
},
{
'name': 'Inventory',
'models': [
'Country',
'Server',
'Package',
'blog.post'
],
'icon':'icon-user'
},
{
'name': 'Blog',
'models': [
'Post',
],
'icon':'icon-user'
},
{
'name': 'Reports',
'models': [
('Users', '/console/reports/users'),
('Usage', '/console/reports/usage'),
],
'icon':'icon-user'
}
]
现在,我想做的是:-如果用户是超级用户,请让他查看整个菜单
-如果用户是stuff的一部分(
is_staff
),则只允许他查看报告
部分
我可以直接从我的settings.py
文件中执行此操作吗?如果这是不可能的,我如何才能实现我想要的
如果需要,我会提供任何其他信息。这在设置文件中是不可能的(我无论如何都不知道) 您可以在菜单模板中轻松修复此问题。在我的情况下,我只希望超级用户能够看到管理仪表板链接
{% if request.user.is_superuser %}
<a href="{% url 'admin:index' %}">Admin dashboard</a>
{% endif %}
我看了文件。我知道需要
@permission\u
decorator,但这对我没有帮助如果这对我没有帮助,你打算如何使用管理菜单
?在这里没有提到它。
from django.contrib.auth.decorators import permission_required
@permission_required('polls.can_vote')
def my_view(request):
...