美文网首页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