Django 1.11.4 に upgrade したところ、widgets.py
で以下のエラーが発生しました。
対処方法を記載します。
File "/usr/local/lib/python2.7/site-packages/django/utils/html.py", line 376, in <lambda>
klass.__unicode__ = lambda self: mark_safe(klass_unicode(self))
File "/usr/local/lib/python2.7/site-packages/django/forms/boundfield.py", line 41, in __str__
return self.as_widget()
File "/usr/local/lib/python2.7/site-packages/django/forms/boundfield.py", line 127, in as_widget
**kwargs
File "/usr/local/lib/python2.7/site-packages/mezzanine_pagedown/widgets.py", line 41, in render
final_attrs = self.build_attrs(attrs, name=name)
対処方法
以下、同じ問題で落ちていたbefore after を見つけました。
Django 1.11 support by vstoykov · Pull Request #364 · django-ckeditor/django-ckeditor
対象箇所は以下のように修正すればいいようです。
-
Django 1.10 までの記載
final_attrs = self.build_attrs(attrs, name=name)
-
Django 1.11 からの記載
final_attrs = self.build_attrs(self.attrs, attrs, name=name) # 以下、メソッドを追加する def build_attrs(self, base_attrs, extra_attrs=None, **kwargs): """ Helper function for building an attribute dictionary. This is combination of the same method from Django<=1.10 and Django1.11+ """ attrs = dict(base_attrs, **kwargs) if extra_attrs: attrs.update(extra_attrs) return attrs
Version Up時はちょいちょい落ちますね。
以上です。
コメント