美文网首页
xadmin 的安装使用和简单配置

xadmin 的安装使用和简单配置

作者: 北冢 | 来源:发表于2017-07-14 12:18 被阅读0次

    目前看来,django后台管理还是选取 django-xadmin 比较合适。功能丰富、扩展性也不错。

    环境

    安装方式

    虽然 django-xadmin 可以使用 pip install xadmin 来安装,但是还是推荐使用 github 上的源码,功能丰富。git clone 下来的目录中,将目录下的 xadmin 复制进入 django 项目中,(比如项目下的 extra_apps 这种目录)。

    在项目的 settings.py 中加入

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'xadmin',
        'crispy_forms',
    ]
    

    注意:如果使用时候报错,提示缺少module,按照提示使用 pip 命令安装即可。

    使用

    首先在全局的 urls.y 文件中,加入如下:

    from django.conf.urls import include
    import xadmin
    
    urlpatterns = [
        # url(r'^admin/', admin.site.urls),
        url(r'^xadmin/', xadmin.site.urls),
    ]
    

    注册 Model

    假设在 django 项目中建立了一个名为 example 的App,那么需要在 example 目录下建立一个 adminx.py 文件, 内容如下:

    
    import xadmin
    from .models import Example
    
    class ExampleAdmin(object):
    
        # 在后台中显示的字段
        list_display = ('field1', 'field2', ......)
    
        # 给字段加上搜索功能
        search_fields = ('field1', 'field2', ......)
    
        # 给字段加上过滤显示
        list_filter = ('field1', 'field2', ......)
    
    
    xadmin.site.register(Example, ExampleAdmin)
    
    

    xadmin 全局配置

    django app下的adminx.py中加入以下内容:

    import xadmin
    from xadmin.views import BaseAdminView, CommAdminView
    
    
    class GlobalSetting(object):
        # 给xadmin后台加上一个站名
        site_title = '<site title>'
        # 给xadmin后台footer部分加一个名称
        site_footer = '<site footer>'
        # 让xadmin后台的各种菜单可折叠
        menu_style = 'accordion'
    
    
    class BaseSetting(object):
        # 打开主题
        enable_themes = True
        # 启用更多主题选项
        use_bootswatch = True
    
    
    xadmin.site.register(CommAdminView, GlobalSetting)
    xadmin.site.register(BaseAdminView, BaseSetting)
    

    xadmin 其他设置

    在 xadmin 后台管理中,YourApp 名称都是英文的,如果需要显示中文名称,需要在 yourapp/apps.py 中加入如下:

    
    # coding: utf-8
    from __future__ import unicode_literals
    
    from django.apps import AppConfig
    
    
    class YourAppConfig(AppConfig):
        name = 'yourapps'
        verbose_name = u'你的应用名'
    
    

    然后在 app/__init__.py 中加入如下内容:

    
    default_app_config = "yourapps.apps.YourAppConfig"
    
    

    然后重启django

    相关文章

      网友评论

          本文标题:xadmin 的安装使用和简单配置

          本文链接:https://www.haomeiwen.com/subject/qdbnhxtx.html