django集成xadmin的方法

xadmin是django的一个第三方的管理后台实现,它的功能比自带的admin功能更加强大。
xadmin项目在github上的地址为:https://github.com/sshwsfc/xadmin
xadmin相关文档可以在这里查看:http://xadmin.readthedocs.io/en/docs-chinese/

文档上有些地方写的还是比较简要,按照上面的步骤做,有时候报错了可能还不知道什么原因。这里简要总结下自己集成xadmin的方法,我使用的是1.9版的django和2.7的python。

1 使用pip安装
xadmin项目在github上的文档写的安装命令为:

pip install xadmin

但是中文文档的网站上写的安装命令为:

pip install django-xadmin

这两个命令并不是装的同一个包,应该是选择一个即可。使用pip install xadmin,安装的版本是xadmin-0.6.1;使用pip install django-xadmin安装的话,是django-xadmin-0.5.0。但不要两个都安装,可能会报错的。这里我使用的是pip install xadmin命令安装。

2 在项目中添加xadmin配置
1)settings.py文件
INSTALLED_APPS中添加xadmin的安装,文档网站上是这样写的:

INSTALLED_APPS = (
    ...
    'xadmin',
    'crispy_forms',
    'reversion',
    ...
)

直接参考这个配置添加上面三个应用的话,会报错找不到reversion模块。因为crispy_forms在安装xadmin的时候是一起被安装了,但是reversion需要额外安装一下

pip install django-reversion

在添加应用后,需要重新makemigrations和migrate一下,以生成对应所需的数据库表。

2)urls.py文件
urls里面要添加xadmin的匹配,示例如下:

from django.conf.urls import patterns, include, url
from xadmin.plugins import xversion
import xadmin

#version模块自动注册需要版本控制的 Model
xversion.register_models()

xadmin.autodiscover()

urlpatterns = [
    ...
    url(r'xadmin/', include(xadmin.site.urls)),
]

3)adminx.py文件
django自带的admin模块使用的是admin.py文件,xadmin模块的文件名则叫adminx.py。admin模块在配置时使用的参数是admin.ModelAdmin,xadmin则使用object即可。然后替换admin.site.register为xadmin.site.register。例如:

from django.contrib import admin
from .models import FelixProjects
import xadmin
# Register your models here.
#class FelixProjectsAdmin(admin.ModelAdmin):
class FelixProjectsAdmin(object):
    list_display = ('pj_name', 'pj_group', 'pj_category')

xadmin.site.register(FelixProjects, FelixProjectsAdmin)

在集成xadmin之后,admin模块其实就可以不要了,可以将原admin的代码删掉。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值