推荐学习书目
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 · Jan 16, 2018 · 2454 views
    This topic created in 3065 days ago, the information mentioned may be changed or developed.

    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')},
    
                )},
            )
    
    No Comments Yet
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   959 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 20:13 · PVG 04:13 · LAX 13:13 · JFK 16:13
    ♥ Do have faith in what you're doing.