Django 1.0beta1で作ったアプリを1.0rc1で動かすためにやったこと。
1.0rc1リリース記念。
saveメソッドのシグネチャ変更
http://docs.djangoproject.com/en/dev/ref/models/instances/#saving-objects
beta1からrc1にアップデートしたら、軒並みテストに失敗したので焦った。
force_insert と force_update が追加された。なのでsaveメソッドをオーバーライドするときはこう書く。
def save(self, force_insert=False, force_update=False): super(Hoge, self).save(force_insert, force_update)
Managerを継承するときはコンストラクタを呼ぶ
サブクラスでManagerの__init__を呼ばないと「_inherited属性がない」って怒られます。
class CustomManager(models.Manager): def __init__(self, *args, **kwargs): super(CustomManager, self).__init__()
あと解決してほしい不具合
http://code.djangoproject.com/ticket/8194
ユーザーを新規作成するとき(/admin/auth/user/add/)、javascriptでエラーになる。getElementByIdの引数が空になってるみたい。でもクローズされてるなあ。