mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-11-22 19:33:11 +00:00
Inchallah ça va mieux marcher (fix la modification des fields pendant le parcours).
This commit is contained in:
parent
e46382b732
commit
3a4b72c01b
1 changed files with 5 additions and 2 deletions
|
@ -60,15 +60,18 @@ class FieldPermissionModel(FieldPermissionModelMixin, models.Model):
|
||||||
|
|
||||||
class FieldPermissionFormMixin:
|
class FieldPermissionFormMixin:
|
||||||
"""
|
"""
|
||||||
Construit le formulaire et retire les champs interdits
|
Construit le formulaire et retire les champs interdits
|
||||||
"""
|
"""
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
user = kwargs.pop('user')
|
user = kwargs.pop('user')
|
||||||
|
|
||||||
super(FieldPermissionFormMixin, self).__init__(*args, **kwargs)
|
super(FieldPermissionFormMixin, self).__init__(*args, **kwargs)
|
||||||
|
to_be_deleted = []
|
||||||
for name in self.fields:
|
for name in self.fields:
|
||||||
if not self.instance.has_field_perm(user, field=name):
|
if not self.instance.has_field_perm(user, field=name):
|
||||||
self.remove_unauthorized_field(name)
|
to_be_deleted.append(name)
|
||||||
|
for name in to_be_deleted:
|
||||||
|
self.remove_unauthorized_field(name)
|
||||||
|
|
||||||
def remove_unauthorized_field(self, name):
|
def remove_unauthorized_field(self, name):
|
||||||
del self.fields[name]
|
del self.fields[name]
|
||||||
|
|
Loading…
Reference in a new issue