Browse Source

ajusta qs p/ lista de usuários em autor

pull/3371/head
Leandro Roberto 5 years ago
parent
commit
1632a30b25
  1. 23
      sapl/base/forms.py

23
sapl/base/forms.py

@ -465,9 +465,7 @@ class AutorForm(ModelForm):
widget=forms.RadioSelect())
operadores = forms.ModelMultipleChoiceField(
queryset=get_user_model().objects.filter(
is_active=True,
operadorautor_set__isnull=True),
queryset=get_user_model().objects.all(),
widget=UserCheckboxSelectMultiple(),
label=_('Usuários do SAPL ligados ao autor acima selecionado'),
required=False,
@ -519,6 +517,18 @@ class AutorForm(ModelForm):
super(AutorForm, self).__init__(*args, **kwargs)
self.fields['operadores'].choices = [
(
u.id,
u.username,
u
)
for u in get_user_model().objects.filter(
is_active=True,
operadorautor_set__autor=self.instance
).order_by(
get_user_model().USERNAME_FIELD
) if self.instance.id
] + [
(
u.id,
u.username,
@ -556,7 +566,6 @@ class AutorForm(ModelForm):
if not self.is_valid():
return self.cleaned_data
User = get_user_model()
cd = self.cleaned_data
qs_autor = Autor.objects.all()
@ -613,8 +622,8 @@ class AutorForm(ModelForm):
return self.cleaned_data
@transaction.atomic
def save(self, commit=False):
autor = super(AutorForm, self).save(commit)
def save(self, commit=True):
autor = self.instance
if not autor.tipo.content_type:
autor.content_type = None
@ -625,7 +634,7 @@ class AutorForm(ModelForm):
).objects.get(pk=self.cleaned_data['autor_related'])
autor.nome = str(autor.autor_related)
autor.save()
autor = super(AutorForm, self).save(commit)
return autor

Loading…
Cancel
Save