Django admin:'bool'对象没有属性'startswith'

时间:2017-08-17 20:20:59

标签: django

我正在使用django_smart_select包。我正在尝试使用链式选择选项的模型收到以下错误。

AttributeError at /admin/tags/tag/add/
'bool' object has no attribute 'startswith'
Request Method: GET
Request URL:    http://127.0.0.1:8000/admin/tags/tag/add/
Django Version: 1.11.4
Exception Type: AttributeError
Exception Value:    
'bool' object has no attribute 'startswith'

Error during template rendering

In template C:\Users\gautammandewalker\Envs\django01\lib\site-
packages\django\contrib\admin\templates\admin\base.html, error at line 3
'bool' object has no attribute 'startswith'
1   {% load i18n static %}<!DOCTYPE html>
2   {% get_current_language as LANGUAGE_CODE %}{% get_current_language_bidi 
as LANGUAGE_BIDI %}
3   <html lang="{{ LANGUAGE_CODE|default:"en-us" }}" {% if LANGUAGE_BIDI 
%}dir="rtl"{% endif %}>
4   <head>
5   <title>{% block title %}{% endblock %}</title>
6   <link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% 
static "admin/css/base.css" %}{% endblock %}" />
7   {% block extrastyle %}{% endblock %}
8   {% if LANGUAGE_BIDI %}<link rel="stylesheet" type="text/css" href="{% 
block stylesheet_rtl %}{% static "admin/css/rtl.css" %}{% endblock %}" />{% 
endif %}
9   {% block extrahead %}{% endblock %}
10  {% block blockbots %}<meta name="robots" content="NONE,NOARCHIVE" />{% 
 endblock %}
11  </head>
12  {% load i18n %}

3 个答案:

答案 0 :(得分:4)

for(Entry<String, Optional<Object>> current : attributesToCalculate.entrySet()) { if (current.getValue().isPresent()) { calculatedAttributes.put(current.getKey(), current.getValue().get()); } } 中使用:

settings.py

删除

USE_DJANGO_JQUERY = True

答案 1 :(得分:0)

有同样的问题。

settings.py

中删除
SMART_SELECTS_JQUERY_URL = True
JQUERY_URL = True

无论你使用哪个。

当您使用智能选择表单时,而不是将脚本直接添加到页面模板中:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="{% static 'smart-selects/admin/js/bindfields.js' %}"></script>
<script src="{% static 'smart-selects/admin/js/chainedfk.js' %}"></script>
来自智能选择的jQuery必须以某种方式干扰管理页面。

答案 2 :(得分:0)

这是jQuery的绑定问题,Jet默认使用Django jQuery,而Smart Select默认使用Google API。

只需在Django设置中为Smart Select放置以下内容即可:

JQUERY_URL = False