zoukankan      html  css  js  c++  java
  • xadmin后台管理--Django配置(以及xadmin具体使用)

    xadmin后台管理

    安装:虚拟环境下
    # >: pip install https://codeload.github.com/sshwsfc/xadmin/zip/django2
    
    注册app:dev.py
    INSTALLED_APPS = [
        # ...
        # xamin主体模块
        'xadmin',
        # 渲染表格模块
        'crispy_forms',
        # 为模型通过版本控制,可以回滚数据
        'reversion',
    ]
    
    xadmin:需要自己的数据库模型类,完成数据库迁移
    python manage.py makemigrations
    python manage.py migrate
    
    设置主路由替换掉admin:主urls.py
    # xadmin的依赖
    import xadmin
    xadmin.autodiscover()
    # xversion模块自动注册需要版本控制的 Model
    from xadmin.plugins import xversion
    xversion.register_models()
    
    urlpatterns = [
        # ...
        path(r'xadmin/', xadmin.site.urls),
    ]
    
    创建超级用户:api路径终端
    # 在项目根目录下的终端
    python manage.py createsuperuser
    # 账号密码设置:admin | Admin123  创建密码的时候可能不会显示密码
    
    完成xadmin全局配置:新建home/adminx.py
    # home/adminx.py
    # xadmin全局配置
    import xadmin
    # Register your models here.
    from xadmin import views
    
    
    class GlobalSettings(object):
        """xadmin的全局配置"""
        site_title = "Beetle"  # 设置站点标题
        site_footer = "Beetle有限公司"  # 设置站点的页脚
        menu_style = "accordion"  # 设置菜单折叠
    
    
    在adminx.py中注册model:home/adminx.px
    from . import models
    # 注册
    xadmin.site.register(models.Banner)
    
    修改app:home的名字:xadmin页面上的显示效果
    # home/__init__.py
    default_app_config = "home.apps.HomeConfig"
    
    # home/apps.py
    from django.apps import AppConfig
    class HomeConfig(AppConfig):
        name = 'home'
        verbose_name = '我的首页'
    

    具体使用中文文档

    https://blog.csdn.net/bocai_xiaodaidai/article/details/94395604
    https://www.cnblogs.com/wumingxiaoyao/p/6928297.html
    https://blog.csdn.net/iteye_12715/article/details/82678753 取消按钮
    https://www.cnblogs.com/zgf-666/p/9161854.html 其他设置
    https://www.bbsmax.com/A/kvJ3p6Wg5g/ 控制用户访问数据

    控制用户访问数据

    def queryset(self):
        qs = super().queryset()
        print(qs)
    
        if self.request.user.is_superuser:  # 超级用户可查看所有数据
            return qs
        else:
            return qs.filter(hospital_name=self.request.user.username)
    

    取消表增加和删除权限

    class Modeladmin(object):
    def has_add_permission(self):
    return False
    def has_delete_permission(self):
    return False

  • 相关阅读:
    操作系统第一天学习
    进制之间的转换
    git的使用
    Python 第二天学习(文件的处理)
    下载博客首页的博客列表
    获取所有的列表
    抓取指定博客的内容
    进程简介
    python 内置函数range和xrange
    关于read的例子和条件测试
  • 原文地址:https://www.cnblogs.com/jhpy/p/12096085.html
Copyright © 2011-2022 走看看