久々にdjangoを最新版にアップデートしたら下記の問題が発生した。
- ページを開く時にadmin関連のエラーが出るようになった。
- models.pyに定義したverdjnlibのPhotoFieldが動作しなくなった。
ページを開く時にadmin関連のエラーが出るようになった
url.pyでadminサイトを呼び出す方法が変わったらしい。
下記URLの後方互換性のない機能の一覧に記載されていた。こんなページがあったとは初めて知ったわ。
http://code.djangoproject.com/wiki/BackwardsIncompatibleChanges#Mergednewforms-adminintotrunk
models.pyに定義したverdjnlibのPhotoFieldが動作しなくなった。
今のところ2つ問題が発生するのを確認した。
- checkboxfieldは存在しないというエラーが発生する。
- PhotoField定義した列がsyncdbした時にDBに反映されなくなった
checkboxfieldは存在しないというエラーが発生する
こちらは、newformsがformsに統合されたため、formsの中にcheckboxfieldが存在しなくなったのが原因だった。
verdjnlib/fields/deletecheckbox.pyの1行目を下記のように変更したら直った。
from django.oldforms import CheckboxField # django.formsをdjango.oldformsに変更
PhotoField定義した列がsyncdbした時にDBに反映されなくなった
これが原因が分からず、苦労した。どうやらImageFieldとFileFieldの
構成が変わったのが原因らしい。
とりあえず、下記の箇所を変更したら反映されるようになった。
verdjnlib/fields/photofield.py(37行目付近)
def get_internal_type(self): return 'FileField' # return 'ImageField'から変更