diff --git a/anki/models.py b/anki/models.py index 4e4031f39..e8e3a5c9c 100644 --- a/anki/models.py +++ b/anki/models.py @@ -373,6 +373,7 @@ select id from notes where mid = ?)""" % " ".join(map), self._changeNotes(nids, newModel, fmap) if cmap: self._changeCards(nids, newModel, cmap) + self.col.genCards(nids) def _changeNotes(self, nids, newModel, map): d = [] diff --git a/tests/test_models.py b/tests/test_models.py index 7269afc10..87a038e6e 100644 --- a/tests/test_models.py +++ b/tests/test_models.py @@ -197,12 +197,14 @@ def test_modelChange(): deck.models.change(basic, [f.id], basic, None, map) f.load() c0.load() + # the card was deleted try: c1.load() assert 0 except TypeError: pass - assert len(f.cards()) == 1 + # but we have two cards, as a new one was generated + assert len(f.cards()) == 2 # an unmapped field becomes blank assert f['Front'] == 'b123' assert f['Back'] == 'f'