9

メソッドをオーバーライドして、createいくつかの関連オブジェクトも保存するDjangoモデルのカスタマーマネージャーがあります。

class CustomManager(models.Manager):
    def create(self, amount, user, description):
        txn = self.get_query_set().create(user, description)
        txn.budget_transactions.create(amount)
        return txn

txn.budget_transactions.create私の質問は次のとおりです。例外を発生させるために呼び出しをモックするにはどうすればよいですか?

オブジェクトのbudget_transactions属性txnは のインスタンスですdjango.db.models.fields.related.RelatedManager。このクラスをモックに使用mock.patchしても、動的に宣言されているため機能しません。直接インポートすることはできません。

誰もこれを行う方法を知っていますか?

4

2 に答える 2