1

私はここにあるコードの実装で使用しており、django-admin. サーバーは、django の古いチェックアウト (7cfe8e8fce) から実行されています。ローカル マシンで、現在のチェックアウト (d407164c) を実行しています。そのフォームにアクセスしようとすると、以下のエラーとreturn行への参照が表示されます。

def _get_empty_form(self, **kwargs):
    return super(ParentInstInlineFormSet, self)._get_empty_form(parent_instance=self.instance)
empty_form = property(_get_empty_form)

エラー テキスト:

'super' object has no attribute '_get_empty_form'
Request Method: GET
Request URL:    http://localhost:8000/pmc/admin/pmc_log/reportperiod/add/
Django Version: 1.6.dev20121220194515
Exception Type: AttributeError
Exception Value:    
'super' object has no attribute '_get_empty_form'
Exception Location: /software/django-pmc-daily-log/src/pmc_log/pmc_log/forms.py in _get_empty_form, line 18

どこに行った_get_empty_form?そして、これを回避する最善の方法は何ですか?

4

2 に答える 2

2

_先頭にあるは、周囲にあることに依存してはならないことを示すかなり良い指標です。プロパティ_get_empty_formを使用するために削除されたようです。empty_form

empty_form親クラスのプロパティを呼び出すようにコードを変更してみてください。

于 2012-12-21T18:43:41.793 に答える
1

プライベート メソッドを使用する代わりに、デコレータ _get_empty_formを使用しました。@property

@property
def get_empty_form(self, **kwargs):
    if self.instance is not None:
        return super(ParentInstInlineFormSet, self).empty_form(parent_instance=self.instance)
于 2013-03-21T14:45:59.393 に答える