Preciso gravar na models User do django um campo denominado "Role" do tipo boolean. Este campo vai ser True quando for um cliente se cadastrando e False para quando for um Fornecedor. A principio, no que tange visualmente, o campo aparece na tela e eu consigo marcar ele, mas seu valor não persiste no banco. Na verdade, ele nem precisaria aparecer, mas na via views.py eu gostaria de quando "origin" fosse igual a 'Client' o valor seria True e False quando 'Provider'.
*models.py* class Role(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) # Adicionando os campos role = models.BooleanField(default=False) def __str__(self): return self.user.username *views.py* from django.shortcuts import render, redirect from django.contrib.auth.forms import UserCreationForm from django.contrib.auth import authenticate, login from django.conf import settings from .forms import RegisterForm def register(request, origin): template_name = '../templates/register.html' if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): user = form.save() user = authenticate( username=user.username,password=form.cleaned_data['password1'] ) login(request,user) return redirect('qnow_client:quotation_client') #return <https://www.facebook.com/hashtag/return?source=note&epa=HASHTAG> HttpResponse("<h1>Área do marceneiro</h1>") else: form = RegisterForm() context = { 'origin': origin, 'active_page_client_provider':'active', 'form': form } return render(request, template_name,context) *forms.py* from django import forms from django.contrib.auth.forms import UserCreationForm from django.contrib.auth.models import User class RegisterForm(UserCreationForm): email = forms.EmailField(label='E-mail') role = forms.BooleanField(label='Cliente') def clean_email(self): email = self.cleaned_data['email'] if User.objects.filter(email=email).exists(): raise forms.ValidationError('Já existe usuário com este E-mail!') return email def save(self): user = super(RegisterForm, self).save(commit=False) user.email = self.cleaned_data['email'] user.save() return user -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To post to this group, send email to django-users@googlegroups.com. Visit this group at https://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/32eda923-d981-4cd9-8966-be2285f019c3%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.