2017-02-01 5 views
0

Я использую django smart select и django material в проекте и получить 'NoneType' object is not subscriptable со страницы администратора \ шаблоны \ материал \ поля \ django_relatedfieldwidgetwrapper.html, который содержитДжанго материал с Джанго смарт выбора ошибки

{% load material_form material_form_internal material_admin i18n %} 

{% admin_related_field_urls bound_field as bound_field_urls %} 

<div class="related-widget-wrapper"> 
{% render bound_field widget=field.widget.widget %} 
    {% part field label %} 
    <label for="{{ bound_field.id_for_label }}" class="related-widget-label"> 
     <span style="margin-right:5px">{{ bound_field.label }}</span> 
     {% if bound_field_urls.can_change_related %} 
     <a class="related-widget-wrapper-link change-related" 
      data-href-template="{{ bound_field_urls.change_related_template_url }}?{{ bound_field_urls.url_params }}" 
      id="change_id_{{ bound_field.html_name }}" 
      title="{% blocktrans %}Change selected {{ bound_field_urls.model }}{% endblocktrans %}"> 
      <i class="material-icons" style="line-height:16px;font-size:16px">create</i> 
     </a> 
     {% endif %} 
     {% if bound_field_urls.can_add_related %} 
     <a class="related-widget-wrapper-link add-related" 
      href="{{ bound_field_urls.add_related_url }}?{{ bound_field_urls.url_params }}" 
      id="add_id_{{ bound_field.html_name }}" 
      title="{% blocktrans %}Add another {{ bound_field_urls.model }}{% endblocktrans %}"> 
      <i class="material-icons" style="line-height:16px;font-size:16px">add</i> 
     </a> 
     {% endif %} 
     {% if bound_field_urls.can_delete_related %} 
     <a class="related-widget-wrapper-link delete-related" 
      data-href-template="{{ bound_field_urls.delete_related_template_url }}?{{ bound_field_urls.url_params }}" 
      id="add_id_{{ bound_field.html_name }}" 
      title="{% blocktrans %}Delete selected {{ bound_field_urls.model }}{% endblocktrans %}"> 
      <i class="material-icons" style="line-height:16px;font-size:16px">remove</i> 
     </a> 
     {% endif %} 
    </label> 
    {% endpart %} 
    {% part field help_text %}{% endpart%} 
{% endrender %} 
</div> 

TraceBack:

... 
File "C:\lib\site-packages\django\template\library.py" in render 
    203.   output = self.func(*resolved_args, **resolved_kwargs) 

File "C:\lib\site-packages\material\admin\templatetags\material_admin.py" in admin_related_field_urls 
    296.   'widget': rel_widget.widget.render(bound_field.name, bound_field.value()), 

File "C:\project\smart_selects\widgets.py" in render 
    138.     "id": attrs['id'], 

Exception Type: TypeError at /admin/products/product/add/ 
Exception Value: 'NoneType' object is not subscriptable 

Есть ли способ исправить проблему. Заранее спасибо.

+0

Пожалуйста, добавьте более отслеживающий. – Udi

+0

Пожалуйста, проверьте это http://pastebin.com/Ty0As1Vy – nikolas

ответ

0

У Вас есть ошибка в вашем коде, в строке # 138 в smart_selects\widgets.py:

File "C:\project\smart_selects\widgets.py" in render 
    138.     "id": attrs['id'], 

(Локальная переменная attrs не ДИКТ Это None.)

+0

Обычно он отлично работает. Но при добавлении django-материала он показывает ошибку – nikolas

+0

Вы можете указать ошибку в github repo smart-select. Вероятно, у вас будет больше шансов получить ответ, если вы добавите свои 'forms.py' и' models.py' и, возможно, даже 'views.py' – Udi

+0

Хорошо спасибо. Но это лучший вариант, чем smart-select для django – nikolas

Смежные вопросы