From 863d066786378b6558a1a751e85bee157951958f Mon Sep 17 00:00:00 2001 From: Loic Teixeira Date: Tue, 31 Jul 2018 17:35:43 -0500 Subject: [PATCH] Ensure deconstruct is consistent Regardless of whether it was created with `page_type` or `target_model`. Similarly to the `__init__` method, we cannot completely deprecate `target_model` so the `deconstruct` method has to handle both parameters. --- wagtail/core/blocks/field_block.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/wagtail/core/blocks/field_block.py b/wagtail/core/blocks/field_block.py index 8bda3d101c..d9a6b98dc8 100644 --- a/wagtail/core/blocks/field_block.py +++ b/wagtail/core/blocks/field_block.py @@ -651,7 +651,7 @@ class PageChooserBlock(ChooserBlock): def deconstruct(self): name, args, kwargs = super().deconstruct() - if 'page_type' in kwargs: + if 'target_model' in kwargs or 'page_type' in kwargs: target_models = [] for target_model in self.target_models: @@ -660,6 +660,7 @@ class PageChooserBlock(ChooserBlock): '{}.{}'.format(opts.app_label, opts.object_name) ) + kwargs.pop('target_model', None) kwargs['page_type'] = target_models return name, args, kwargs