Django2.0 应用 Xadmin 报错解决(转载)

原文地址:https://blog.csdn.net/GoAheadNeverTurnBack/article/details/8143362

1、TypeError at /xadmin/
    login() got an unexpected keyword argument 'current_app'错误
    Exception Location: /home/wuchao/PycharmProjects/mxonline3/extra_apps/xadmin/views/website.py in get, line 66
解决方案:根据提示进入website,注释61行
 #'current_app': self.admin_site.name,
2、AttributeError at /xadmin/
'Media' object has no attribute 'add_css'
Request Method:     GET
Request URL:     http://localhost:8000/xadmin/
Django Version:     2.0.1
Exception Type:     AttributeError
Exception Value:     
'Media' object has no attribute 'add_css'
Exception Location:     /home/wuchao/PycharmProjects/mxonline3/extra_apps/xadmin/util.py in vendor, line 94
解决方案:
将util.py 中的86行

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、AttributeError at /xadmin/xadmin/log/
'DateTimeField' object has no attribute 'rel'
Request Method:     GET
Request URL:     http://localhost:8000/xadmin/xadmin/log/
Django Version:     2.0.1
Exception Type:     AttributeError
Exception Value:    
'DateTimeField' object has no attribute 'rel'
Exception Location:     /home/wuchao/PycharmProjects/mxonline3/extra_apps/xadmin/views/list.py in get_list_queryset, line 228
修改 views/list.py 中228行
 if isinstance(field.rel, models.ManyToOneRel):
        related_fields.append(field_name)

修改为
 if isinstance(field.remote_field, models.ManyToOneRel):
        related_fields.append(field_name)

后面继续报这个“rel”的错误,解决方法参考3,根据 Exception Location 提示 找到Xadmin报错行,将 field.rel 修改为 field.remote_field

posted @ 2019-07-11 09:40  世人皆萌  阅读(652)  评论(0编辑  收藏  举报