django xadmin

 

1.11.13版本下的[安装]:

1.下载分支版本

https://github.com/nocmt/Xadmin1.11.x/archive/master.zip

2.解压,并将其放在site-package下

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

INSTALLED_APPS = [
    # 'django.contrib.admin',
    'xadmin',
    'crispy_forms',
]

  

3.修改urls.py文件

# from django.contrib import admin
import xadmin

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

  

4.安装依赖库

pip install six future httplib2 django-reversion django-formtools django-crispy-forms

  

5.连接并创建表

python manage.py makemigrations
python manage.py migrate

  

二[配置]:

1.后台展示字段的配置文件创建

1.1 在自己项目的app下创建adminx.py文件。

1.2 将同级目录下的admin.py文件内的内容复制到adminx.py内,原admin.py内的代码注释。

1.3 将 import admin 修改为 import xadmin,其余地方同理admin改为xadmin。

import xadmin

from .models import Goods


class GoodsAdmin(object):
    list_display = ["name", "click_num", "sold_num", "fav_num", "goods_num", "market_price",
                    "shop_price", "goods_brief", "goods_desc", "is_new", "is_hot", "add_time"]
    search_fields = ['name', ]
    list_editable = ["is_hot", ]
    list_filter = ["name", "click_num", "sold_num", "fav_num", "goods_num", "market_price",
                   "shop_price", "is_new", "is_hot", "add_time", "category__name"]

xadmin.site.register(Goods, GoodsAdmin)

  

django2.0.5:

捷径:传送门https://github.com/sshwsfc/xadmin/tree/django2

直接

$ pip install https://codeload.github.com/sshwsfc/xadmin/zip/django2

  

1.xadmin的安装:

pip install xadmin 报错:'gbk' codec can't decode byte 0xa4 in position 3444

手动安装:

1)下载https://github.com/sshwsfc/xadmin

2)创建空文件覆盖README.rst

3)python setup.py install

 

2. 修改源码

1)from django.core.urlresolvers修改成了django.urls

2)外键添加on_delete=models.CASCADE参数

3)forms.Field.__init__(self, required, widget, label, initial, help_text, *args, **kwargs)  修改成 forms.Field.__init__(self)

4)from django.db.models.sql.query import LOOKUP_SEP, QUERY_TERMS 修改为

from django.db.models.sql.query import LOOKUP_SEP
from django.db.models.sql.constants import QUERY_TERMS

  

5)if settings.LANGUAGES and ‘django.middleware.locale.LocaleMiddleware’ in settings.MIDDLEWARE_ClASSES:修改为

if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE:

  

6)login() got an unexpected keyword argument 'current_app'错误

#'current_app': self.admin_site.name,注释掉即可

 

7)'Media' object has no attribute 'add_css'

将util.py 中的86行 def vendor(*tags)修改

def vendor(*tags):
    css = {'screen': []}
    js = []
    for tag in tags:
        file_type = tag.split('.')[-1]
        files = xstatic(tag)
        if file_type == 'js':
            js.extend(files)
        elif file_type == 'css':
            css['screen'] += files
    return Media(css=css, js=js)

  

3.终于跑起来了^-^

 

posted @ 2018-05-01 17:33  家迪的家  阅读(952)  评论(0编辑  收藏  举报