python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Django-Xadmin后台首页添加小组件报错

Django-Xadmin后台首页添加小组件报错的解决方案

作者:成都-Python开发-王帅

这篇文章主要介绍了Django-Xadmin后台首页添加小组件报错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Django-Xadmin后台首页添加小组件报错

在修改官网时,使用python3集成了Django2.0和Xadmin 

集成后发现,在Xadmin后台页面首页位置,点击添加小组件报错。

具体报错内容如下:

render() got an unexpected keyword argument 'renderer'”

第一种可能性

找到xadmin/views/dashboard.py,加个参数 renderer=None

即可解决问题,如果还没有解决问题,那么就看下一个处理方法如下

第二种可能性

找到Python包下dist-packages/django/forms/boundfield.py文件,然后修改下面图片内容:

然后重启,搞定。

Django使用xadmin

xadmin特点

1.支持在多种屏幕上无缝浏览

2.内置功能丰富

3.强大的插件系统

4.可以直接在后台对表进行增删改查

安装xadmin

注意:是pip install xadmin-py3

pip install xadmin-py3
pip install xadmin-py3

重要的事说三遍!!!

配置xadmin

在你的项目目录下settings.py中,添加xadmin,crispy_forms(这个是依赖包)

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

将项目目录下的urls.py中的admin注释掉,添加xadmin如下:

urlpatterns = [
    # path('admin/', admin.site.urls),
    path('api/',include("myapp01.urls")),
    path('xadmin/',xadmin.site.urls),
    url(r'^media/(?P<path>.*)$', serve, {'document_root': MEDIA_ROOT}, name='media'),
]

在你需要后台展示的APP下建一个adminx.py文件:

import xadmin
from myapp01.models import Student
class StudentAdmin(object):
    # 操作项功能显示位置设置,两个都为True则顶部和底部都显示
    actions_on_top = True
    actions_on_bottom = True
    # 操作项功能显示选中项的数目
    actions_selection_counter = True
    # 设置默认排序字段,负号表示降序排序
    ordering = ("id",) # 这个,不能省略
    list_display = ("id",'sname','gender','brith','isdelete')
    # list_display = ('api_name', 'api_id', 'source', 'area', 'is_active')
    list_per_page = 3
    empty_value_display = ' -无字段- '
    # 过滤器功能及能过滤的字段
    list_filter = ('isdelete',"gender")
    # 搜索功能及能实现搜索的字段
    search_fields = ('sname', 'gender')
    # menu_style = 'accordion'  # 左边导航栏样式
xadmin.site.register(Student,StudentAdmin) #

使用xadmin

 python manage.py makemigrations # 将model生成迁移文件
 python manage.py migrate  # 将迁移文件生成数据表
 python manage.py createsuperuser #创建超级用户,登录后台使用
 python manage.py runserver 8002 # 启动项目

浏览器上输入:http://127.0.0.1:8002/xadmin/

到登录输入你刚才创建的用户密码

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文