美文网首页django-game
(二)django-game:xadmin 集成 等一系列

(二)django-game:xadmin 集成 等一系列

作者: 你常不走的路 | 来源:发表于2018-01-19 14:49 被阅读46次
    首先 肯定是 安装 xadmin 不同django 版本 对应不同的 xadmin 所以不要弄错了 还有 python版本不同也要注意
    反正就是 不要弄错了 就行了 github地址:https://github.com/sshwsfc/xadmin python 3版本的

    下载 然后 安装

    pip install xadmin-master.zip  ###注意要在 文件的目录下 不然找不到
    

    安装完成后 就是

    把urls 中 修改一下

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

    现在就可以登录 xadmin了 但是 我们还需要创建一个超级用户

    python manage.py createsuperuser  #在虚拟环境下
    

    你可以使用你自己的方法来创建

    然后 就是 配置settings

    把我们前面写的 app 都 写入settings中

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'game.apps.GameConfig',
        'user.apps.UserConfig',
        'user_opreation.apps.UserOpreationConfig',
        'crispy_forms',  #这个是xadmin的依赖包 也需要 放进来
        'xadmin',
    ]
    AUTH_USER_MODEL = 'user.UserProfile'  #这里是我们重写了user模块  所以要告诉系统user 在哪
    
    然后 我们就可以执行 makemigrations 然后在migrate
    接着 就可以登录

    登录过后发现 里面只有 user模块 并没有 其他的game user_opreation 这两个

    所以接下来 我们就进行注册 把 这两个模块注册到 xadmin中
    game

    在game 这个包 下面 创建一个 adminx.py 文件 注意 名字不能写错了
    同时 下面 我为了能快速 搭建后台系统 也没有 加入很多 参数 你们可以自定义

    import xadmin
    from xadmin import  views
    
    from .models import Games,Category,Tags
    
    class GamesAdmin(object):
        list_display = ['name']  #用于  展示数据
        search_fields =['name']  #搜索数据  不能有  image time 字段
        list_filter = ['name']        #过滤数据 
    
    class CategoryAdmin(object):
        list_display = ['name']
        search_fields =['name']
        list_filter = ['name']
    
    class TagAdmin(object):
        list_display = ['name']
        search_fields =['name']
        list_filter = ['name']
    
    xadmin.site.register(Games,GamesAdmin)            #进行注册
    xadmin.site.register(Category,CategoryAdmin)
    xadmin.site.register(Tags,TagAdmin)
    
    然后就是 user_opreation

    基本都差不多

    #coding:utf-8
    __author__ = "dfk"
    __date__ = "2018/1/19 13:09"
    import xadmin
    from xadmin import views
    
    from .models import  UserFav,UserPlay
    
    class UserFavAdmin(object):
        list_display = ['user']
        search_fields =['user']
        list_filter = ['user__username']  #过滤用户名
    
    
    class UserPlayAdmin(object):
        list_display = ['user']
        search_fields =['user']
        list_filter = ['user__username']
    
    xadmin.site.register(UserFav,UserFavAdmin)
    xadmin.site.register(UserPlay,UserPlayAdmin)
    
    然后登录系统发现 能够显示了 但是 不是中文 不够友好

    下面就 修改一些 细微的

    首先把所有的 game 这些都修改为 中文

    在user.apps 下面 添加一个 verbose_name = "用户操作" 就可以了 其他的修改 同理

    from django.apps import AppConfig
    
    class UserOpreationConfig(AppConfig):
        name = 'user_opreation'
        verbose_name = "用户操作"
    

    这里需要注意了 如果 在settings中配置 不是'game.apps.GameConfig', 这个样式 而是 直接写的 game,可能你修改了 依然不得行 。此时 你就需要在 game目录下的 init.py文件下 加上一句

    default_app_config = "game.apps.GameConfig"
    
    如果配置的 game.apps.GameConfig 就不用了
    然后就是 修改 xadmin 为中文

    还是 settings中修改

    LANGUAGE_CODE = 'zh-hans'   #这里版本不同  参数也不同 以前是 zh-cn
    
    TIME_ZONE = 'Asia/Shanghai'
    
    USE_I18N = True
    
    USE_L10N = True
    
    USE_TZ = False
    
    

    现在是中文了

    然后 修改 xadmin的样式

    这时候我们需要在user中创建一个 adminx.py文件

    # coding:utf-8
    __author__ = "dfk"
    __date__ = "2018/1/19 13:05"
    import xadmin
    from xadmin import views
    
    
    # from .models import
    
    
    class BaseSetting(object):  #开启主题
        enable_themes = True
        use_bootswatch = True
    
    
    class GlobalSettins(object):  #修改一些 标题
        site_title = "小学生游戏网后台管理系统"
        site_footer = "小学生游戏网"
        menu_style = "accordion"  #侧栏菜单的 样式修改
    
    
    xadmin.site.register(views.BaseAdminView, BaseSetting)
    xadmin.site.register(views.CommAdminView, GlobalSettins)
    

    现在基本的 后台就完成了 自己可以去 看看

    相关文章

      网友评论

        本文标题:(二)django-game:xadmin 集成 等一系列

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