美文网首页Openstack
python+django+xadmin

python+django+xadmin

作者: 山大刀 | 来源:发表于2018-09-27 09:23 被阅读0次

    环境:CentOS7.4 python2.7 Django1.11 MariaDB

    xadmin安装

    使用pip install xadmin会出现render() got an unexpected keyword argument 'renderer'错误,是由于PyPi上的xadmin版本不支持的缘故。
    所以不要直接使用pip install xadmin,除非你是django1.8* 或1.9*,其他以上版本都不行。
    去github 下载源码,python setup.py install 安装
    下载地址: https://github.com/sshwsfc/xadmin/archive/master.zip

    wget https://github.com/sshwsfc/xadmin/archive/master.zip

    unzip master.zip

    cd xadmin-master

    python setup.py install

    安装成功后,把xadmin整个文件夹移到你的项目下,和manage.py同级

    mv xadmin /www/html/mysite/

    然后就是配置xadmin了:

    1 在 settings.py文件的INSTALLED_APPS内添加以下代码:

    INSTALLED_APPS = [
    ............................
    'xadmin',
    'crispy_forms',
    ]

    2 在urls.py内添加以下代码:
    import xadmin
    并将默认的url(r'^admin/', admin.site.urls),改成或者新增:

    from django.contrib import admin

    import xadmin

    urlpatterns = [
    url(r'^xadmin/', xadmin.site.urls),
    ]
    连接并创建表:
    python manage.py makemigrations
    python manage.py migrate
    启动,登陆看看:
    python manage.py runserver 0.0.0.0:8000

    浏览器查看:
    http://你的IP:8000/xadmin

    主题功能+标题版权+菜单样式设置
    在adminx.py中添加:
    from xadmin import views

    后台主题功能

    class AdminSettings(object):
    enable_themes = True
    use_bootswatch = True

    标题及版权修改

    class GlobalSettings(object):
    site_title = "巡检管理系统"
    site_footer = "NOCMT.COM"

    菜单样式设置

    menu_style = "accordion"
    

    添加类

    xadmin.site.register(views.BaseAdminView, AdminSettings)
    xadmin.site.register(views.CommAdminView, GlobalSettings)
    提示:登陆看看,应该能看到效果了。

    APP名称自定义
    APP名称还是默认的英文名称,我们只需要修改两处文件,即可实现自定义后台展示的APP名称。

    将在APP目录下的apps.py文件中的代码修改成:
    '''

    * coding: utf-8 *

    from django.apps import AppConfig

    class MonitorConfig(AppConfig):
    name= 'monitor'
    verbose_name = "巡检单管理"
    '''
    说明:MonitorConfig为自定义名称,name指定当前的app名称,verbose_name指定要显示的字段。

    将在APP目录下的init.py文件中添加代码:
    default_app_config = "blog.apps.MonitorConfig"
    说明:blog为当前app名称,大家应该明白的。

    model 汉化 显示文字方法
    在对应的model 类下面加入内部类:
    class Meta:
    verbose_name = 'model中文名'
    verbose_name_plural = 'model中文名复数'

    相关文章

      网友评论

        本文标题:python+django+xadmin

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