V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
xojisi
V2EX  ›  Python

关于 django-xadmin 设置的问题

  •  
  •   xojisi · 2018-01-16 10:22:58 +08:00 · 2096 次点击
    这是一个创建于 2510 天前的主题,其中的信息可能已经有所发展或是发生改变。

    djang-xadmin 中,我用了 get_site_menu 布局菜单。

    但是这个没有跟权限关联起来,也就是说所有的用户,都会看到所有下列的菜单。

    区别仅仅是,有些有权限打开,有些没权限打开。

    所以我想问的是,有什么方法可以把这个全局菜单与权限关联。

    效果为:有权限的用户,这个菜单才会显示。没权限的,则不显示。

    虽然 DJANGO 自带这个功能,但是我用 get_site_menu 后,就不知道怎么跟 django 自带的功能挂钩了。

    求各位大大指点。。

    import xadmin
    from xadmin import views
    
    xadmin.site.register(views.CommAdminView,GlobalSettings)
    
    class GlobalSettings(object):
        def get_site_menu(self):
            return (
                {'title': '用户关系', 'menus': (
                    {'title': '用户信息', 'url': self.get_model_url(UserProfile, 'changelist')},
                    {'title': '组', 'url': self.get_model_url(Group, 'changelist')},
                    {'title': '权限', 'url': self.get_model_url(Permission, 'changelist')},
                )},
                {'title': '课程管理', 'menus': (
                    {'title': '课程', 'url': self.get_model_url(Course, 'changelist')},
                    {'title': '章节', 'url': self.get_model_url(Lesson, 'changelist')},
                    {'title': '视频', 'url': self.get_model_url(Video, 'changelist')},
                    {'title': '课件', 'url': self.get_model_url(CourseResource, 'changelist')},
                )},
                {'title': '机构管理', 'menus': (
                    {'title': '城市', 'url': self.get_model_url(CityDict, 'changelist')},
                    {'title': '机构', 'url': self.get_model_url(CourseOrg, 'changelist')},
                    {'title': '教师', 'url': self.get_model_url(Teacher, 'changelist')},
                )},
                {'title': '用户操作', 'menus': (
                    {'title': '用户咨询', 'url': self.get_model_url(UserAsk, 'changelist')},
                    {'title': '用户课程', 'url': self.get_model_url(UserCourse, 'changelist')},
                    {'title': '用户消息', 'url': self.get_model_url(UserMessage, 'changelist')},
                    {'title': '课程评论', 'url': self.get_model_url(CourseComments, 'changelist')},
                    {'title': '用户收藏', 'url': self.get_model_url(UserFavorite, 'changelist')},
    
                )},
            )
    
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2870 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 06:39 · PVG 14:39 · LAX 22:39 · JFK 01:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.