1414from collections import defaultdict
1515from collections import namedtuple
1616from contextlib import suppress
17- from functools import partial
18- from functools import wraps
1917from urllib .parse import parse_qsl
2018from urllib .parse import unquote_plus
2119from urllib .parse import urlparse
@@ -1361,14 +1359,15 @@ def object_copy_get(request, m2m_formset_class):
13611359 ct = ContentType .objects .get_for_model (related_model )
13621360 m2m_initial .append ({"ct" : ct .id })
13631361
1362+ m2m_formset = m2m_formset_class (initial = m2m_initial , form_kwargs = {"user" : request .user })
13641363 return render (
13651364 request ,
13661365 "admin/object_copy.html" ,
13671366 {
13681367 "copy_candidates" : copy_candidates ,
13691368 "update_candidates" : update_candidates ,
13701369 "form" : form ,
1371- "m2m_formset" : m2m_formset_class ( initial = m2m_initial ) ,
1370+ "m2m_formset" : m2m_formset ,
13721371 "opts" : source_object ._meta ,
13731372 "preserved_filters" : preserved_filters ,
13741373 },
@@ -1388,11 +1387,7 @@ def object_copy_view(request):
13881387 This result as an extra step of presenting the target Dataspace list of
13891388 choices.
13901389 """
1391- # Declared here as it required in GET and POST cases.
1392- m2m_formset_class = formset_factory (
1393- wraps (M2MCopyConfigurationForm )(partial (M2MCopyConfigurationForm , user = request .user )),
1394- extra = 0 ,
1395- )
1390+ m2m_formset_class = formset_factory (M2MCopyConfigurationForm , extra = 0 )
13961391
13971392 # Default entry point of the view, requested using a GET
13981393 # At that stage, we are only looking at what the User requested,
@@ -1421,7 +1416,7 @@ def object_copy_view(request):
14211416 exclude_update = {model_class : config_form .cleaned_data .get ("exclude_update" )}
14221417
14231418 # Append the m2m copy configuration
1424- for m2m_form in m2m_formset_class (request .POST ):
1419+ for m2m_form in m2m_formset_class (request .POST , form_kwargs = { "user" : request . user } ):
14251420 if not m2m_form .is_valid ():
14261421 continue
14271422 m2m_model_class = m2m_form .model_class
0 commit comments