Python django.contrib.auth.forms 模块,UserCreationForm() 实例源码

我们从Python开源项目中,提取了以下37个代码示例,用于说明如何使用django.contrib.auth.forms.UserCreationForm()

项目:til    作者:amitsaha    | 项目源码 | 文件源码
def signup(request):
    if request.user.is_authenticated:
        return HttpResponseRedirect('/post/')
    if request.method == 'GET':
        form = UserCreationForm()
        return render(request, 'tilweb/signup.html', {'form': form})
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            # https://docs.djangoproject.com/en/1.11/topics/forms/modelforms/#the-save-method
            form.save()
            username = form.cleaned_data.get('username')
            password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=password)
            login(request, user)
            return HttpResponseRedirect('/post/')
        else:
            # If there were errors, we render the form with these
            # errors
            return render(request, 'tilweb/signup.html', {'form': form})
项目:LearningLog    作者:lineway    | 项目源码 | 文件源码
def register(request):
    '''
    ?????
    '''
    if request.method != 'POST':
        form = UserCreationForm()
    else:
        form = UserCreationForm(data=request.POST)
        if form.is_valid():
            new_user = form.save()
            authenticated_user = authenticate(username=new_user.username,
                                              password=request.POST['password1'])
            login(request, authenticated_user)
            return HttpResponseRedirect(reverse('logs:index'))

    context = {'form': form}
    return render(request, 'users/register.html', context)
项目:SPBU-DBMS-Project    作者:Betekhtin    | 项目源码 | 文件源码
def register(request):
    username = auth.get_user(request).username
    if not (username):
        args={}
        args.update(csrf(request))
        args['form']=UserCreationForm()
        if request.POST:
            newuser_form=UserCreationForm(request.POST)
            if newuser_form.is_valid():
                newuser_form.save()
                newuser = auth.authenticate(username=newuser_form.cleaned_data['username'],password=newuser_form.cleaned_data['password2'])
                auth.login(request, newuser)
                return redirect('/')
            else:
                args['errors'] = format_html('<div class="main-error alert alert-error">?????? ??? ???????????</div>')
                args['form'] = newuser_form
        return render_to_response('register.html',args)
    else:
        return redirect('/')
项目:nrp    作者:django-rea    | 项目源码 | 文件源码
def create_user(request, agent_id):
    if not request.user.is_staff:
        return render_to_response('valueaccounting/no_permission.html')
    agent = get_object_or_404(EconomicAgent, id=agent_id)
    if request.method == "POST":
        user_form = UserCreationForm(data=request.POST)
        #import pdb; pdb.set_trace()
        if user_form.is_valid():
            user = user_form.save(commit=False)
            user.email = agent.email
            is_staff = request.POST.get("is_staff")
            if is_staff == 'on':
                user.is_staff = True
            #user.last_login = datetime.datetime.now()
            user.save()
            au = AgentUser(
                agent = agent,
                user = user)
            au.save()
            if use_faircoins:
                agent.request_faircoin_address()
    return HttpResponseRedirect('/%s/%s/'
        % ('accounting/agent', agent.id))
项目:ottertune    作者:cmu-db    | 项目源码 | 文件源码
def signup_view(request):
    if request.user.is_authenticated():
        return redirect(reverse('home_projects'))
    if request.method == 'POST':
        post = request.POST
        form = UserCreationForm(post)
        if form.is_valid():
            form.save()
            new_post = QueryDict(mutable=True)
            new_post.update(post)
            new_post['password'] = post['password1']
            request.POST = new_post
            return login_view(request)
        else:
            log.warn(form.is_valid())
            log.warn(form.errors)
    else:
        form = UserCreationForm()
    token = {}
    token.update(csrf(request))
    token['form'] = form

    return render(request, 'signup.html', token)
项目:ewe_ebooks    作者:jaymcgrath    | 项目源码 | 文件源码
def update_profile(request):
    if request.method == 'POST':
        user_form = UserCreationForm(request.POST, instance=request.user)
        profile_form = ProfileForm(request.POST, instance=request.user.profile)
        if user_form.is_valid() and profile_form.is_valid():
            user_form.save()
            profile_form.save()
            messages.success(request, 'Your profile was successfully updated!')
            return redirect('settings:profile')
        else:
            messages.error(request, 'Please correct the error below.')
    else:
        user_form = UserCreationForm(instance=request.user)
        profile_form = ProfileForm(instance=request.user.profile)
    return render(request, 'profiles/profile.html', {
        'user_form': user_form,
        'profile_form': profile_form
    })
项目:ewe_ebooks    作者:jaymcgrath    | 项目源码 | 文件源码
def create_profile(request):
    if request.method == 'POST':
        user_form = UserCreationForm(data=request.POST)
        profile_form = ProfileForm(data=request.POST)

        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save(commit=False)
            user.save()
            profile = profile_form.save(commit=False)
            profile.user = user
            profile.save()

            messages.success(request, 'Your profile was successfully created!')
            return redirect('/dashboard/')
        else:
            messages.error(request, 'Please correct the error below.')
    else:
        # GET request.. return the form
        user_form = UserCreationForm()
        profile_form = ProfileForm()

    return render(request, 'people/create_profile.html', {'user_form': user_form, 'profile_form': profile_form})
项目:c3nav    作者:c3nav    | 项目源码 | 文件源码
def register_view(request):
    if request.user.is_authenticated:
        return close_response(request)

    if request.method == 'POST':
        form = UserCreationForm(data=request.POST)
        if form.is_valid():
            user = form.save()
            login(request, user)
            redeem_token_after_login(request)
            return close_response(request)
    else:
        form = UserCreationForm()

    form.fields['username'].max_length = 20
    for field in form.fields.values():
        field.help_text = None

    return render(request, 'site/account_form.html', {
        'title': _('Create new account'),
        'back_url': reverse('site.login'),
        'form': form
    })
项目:website    作者:hackerspace-ntnu    | 项目源码 | 文件源码
def __init__(self, *args, **kwargs):
        super(UserCreationForm, self).__init__(*args, **kwargs)

        # Add honeypots
        self.honeypot_fieldnames = "address", "phone"
        self.honeypot_class = ''.join(
            random.choice(string.ascii_uppercase + string.digits)
            for __ in range(10))
        self.honeypot_jsfunction = 'f' + ''.join(
            random.choice(string.ascii_uppercase + string.digits)
            for __ in range(10))

        for fieldname in self.honeypot_fieldnames:
            self.fields[fieldname] = forms.CharField(
                widget=forms.TextInput(attrs={'class': self.honeypot_class}),
                required=False,
            )
项目:django-example-channels    作者:realpython    | 项目源码 | 文件源码
def sign_up(request):
    form = UserCreationForm()
    if request.method == 'POST':
        form = UserCreationForm(data=request.POST)
        if form.is_valid():
            form.save()
            return redirect(reverse('example:log_in'))
        else:
            print(form.errors)
    return render(request, 'example/sign_up.html', {'form': form})
项目:site    作者:alphageek-xyz    | 项目源码 | 文件源码
def save(self, commit=True):
        user = super(UserCreationForm, self).save(commit=False)
        user.email = self.cleaned_data['email']
        if commit:
            user.save()
            user.groups.add(Group.objects.get_or_create(name='basic_user')[0])
            user.save()
        return user
项目:nrp    作者:django-rea    | 项目源码 | 文件源码
def create_user_and_agent(request):
    #import pdb; pdb.set_trace()
    if not request.user.is_superuser:
        return render_to_response('valueaccounting/no_permission.html')
    agent_selection_form = AgentSelectionForm(data=request.POST or None)
    agent_form = CreateAgentForm(data=request.POST or None)
    user_form = UserCreationForm(data=request.POST or None)
    if request.method == "POST":
        #import pdb; pdb.set_trace()
        selected_agent = None
        if agent_selection_form.is_valid():
            selected_agent = agent_selection_form.cleaned_data['selected_agent']
            agent_form = CreateAgentForm(
                data=request.POST or None,
                instance=selected_agent
            )
        if agent_form.is_valid() and user_form.is_valid():
            agent = agent_form.save(created_by=request.user)
            user = user_form.save(commit=False)
            user.first_name = request.POST.get("first_name")
            user.last_name = request.POST.get("last_name")
            user.email = request.POST.get("email")
            user.save()
            au = AgentUser(
                agent = agent,
                user = user)
            au.save()
            return HttpResponseRedirect('/%s/%s/'
                % ('accounting/agent', agent.id))
    return render_to_response("valueaccounting/create_user_and_agent.html", {
        "user_form": user_form,
        "agent_form": agent_form,
        "agent_selection_form": agent_selection_form,
    }, context_instance=RequestContext(request))
项目:no-design-slack-clone    作者:metsavaht    | 项目源码 | 文件源码
def __init__(self, *args, **kwargs):
        super(UserCreationForm, self).__init__(*args, **kwargs)

        if 'username' in self.fields:
            del self.fields['username']
项目:intel-manager-for-lustre    作者:intel-hpdd    | 项目源码 | 文件源码
def is_valid(self, bundle, request=None):
        data = bundle.data or {}
        if request.method == "PUT":
            errors = {}
            try:
                user = get_object_or_404(User, pk=data['id'])
            except KeyError:
                errors['id'] = ['id attribute is mandatory']
            else:
                change_pw_fields = ['new_password1', 'new_password2']
                if any((True for k in change_pw_fields if data[k] is not None)):
                    from django.contrib.auth.forms import PasswordChangeForm, SetPasswordForm
                    # Non-superusers always require old_password
                    # Superusers require old_password when editing themselves
                    if not request.user.is_superuser or request.user.id == user.id:
                        form = PasswordChangeForm(user, data)
                    else:
                        form = SetPasswordForm(user, data)

                    if not form.is_valid():
                        errors.update(form.errors)

                    return errors

                form = ChromaUserChangeForm(data, instance=user)
                if not form.is_valid():
                    errors.update(form.errors)

            return errors
        elif request.method == "POST":
            form = UserCreationForm(data)

            if form.is_valid():
                return {}
            else:
                return form.errors
        else:
            raise NotImplementedError
项目:mhacks-admin    作者:mhacks    | 项目源码 | 文件源码
def __init__(self, *args, **kwargs):
        super(UserCreationForm, self).__init__(*args, **kwargs)
        self.fields['password2'].label = "Confirm Password"
        self.fields['password2'].longest = True
项目:ctf-manager    作者:BurningNetel    | 项目源码 | 文件源码
def register_page(request):
    form = UserCreationForm(data=request.POST)
    if request.method == 'POST':
        if form.is_valid():
            form.save()
            return redirect('login')
    return render(request, 'registration/register.html', {'form': UserCreationForm()})
项目:ctf-manager    作者:BurningNetel    | 项目源码 | 文件源码
def test_registration_uses_register_form(self):
        response = self.client.get(reverse('register'))
        registration_form = response.context['form']
        self.assertIsInstance(registration_form, UserCreationForm)
项目:django-project-template    作者:thorgate    | 项目源码 | 文件源码
def __init__(self, *args, **kwargs):
        super(UserCreationForm, self).__init__(*args, **kwargs)

        if 'username' in self.fields:
            del self.fields['username']
项目:praelatus-poc    作者:praelatus    | 项目源码 | 文件源码
def save(self):
        """Override the save method of UserCreationForm."""
        u = User.objects.create_user(
            self.data['username'],
            self.data['email'],
            self.data['password1'],
            first_name=self.data['first_name'],
            last_name=self.data['last_name'])
        u.save()
项目:ewe_ebooks    作者:jaymcgrath    | 项目源码 | 文件源码
def get_context_data(self, *args, **kwargs):
        context = super().get_context_data(*args, **kwargs)
        context['member_form'] = context.get('form')
        user_form = UserCreationForm()
        context.update({'user_form': user_form})
        return context
项目:simple-social-auth    作者:sibtc    | 项目源码 | 文件源码
def signup(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            user = authenticate(
                username=form.cleaned_data.get('username'),
                password=form.cleaned_data.get('password1')
            )
            login(request, user)
            return redirect('home')
    else:
        form = UserCreationForm()
    return render(request, 'registration/signup.html', {'form': form})
项目:djangoshop-shopit    作者:dinoperovic    | 项目源码 | 文件源码
def __init__(self, *args, **kwargs):
        # Override default init from `UserCreationForm` to use email as
        # username field, and set autofocus.
        super(UserCreationForm, self).__init__(*args, **kwargs)
        self.fields['email'].widget.attrs.update({'autofocus': ''})
项目:MSOPortal    作者:MSO4SC    | 项目源码 | 文件源码
def signup(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            user = authenticate(
                username=form.cleaned_data.get('username'),
                password=form.cleaned_data.get('password1')
            )
            login(request, user)
            return redirect('home')
    else:
        form = UserCreationForm()
    return render(request, 'registration/signup.html', {'form': form})
项目:django_channels_example    作者:thisismsreddy    | 项目源码 | 文件源码
def sign_up(request):
    form = UserCreationForm()
    if request.method == 'POST':
        form = UserCreationForm(data=request.POST)
        if form.is_valid():
            form.save()
            return redirect(reverse('example:log_in'))
        else:
            print(form.errors)
    return render(request, 'example/sign_up.html', {'form': form})
项目:c3nav    作者:c3nav    | 项目源码 | 文件源码
def register_view(request):
    redirect_path = request.GET['r'] if request.GET.get('r', '').startswith('/editor/') else reverse('editor.index')
    if request.user.is_authenticated:
        return redirect(redirect_path)

    if request.method == 'POST':
        form = UserCreationForm(data=request.POST)
        if form.is_valid():
            user = form.save()
            login(request, user)

            if request.changeset.pk is not None:
                request.changeset.author = user
                request.changeset.save()

            return redirect(redirect_path)
    else:
        form = UserCreationForm()

    form.fields['username'].max_length = 20
    for field in form.fields.values():
        field.help_text = None

    return render(request, 'editor/account_form.html', {
        'title': _('Create new account'),
        'back_url': reverse('site.login'),
        'form': form
    })
项目:website    作者:hackerspace-ntnu    | 项目源码 | 文件源码
def clean(self):
        cd = super(UserCreationForm, self).clean()
        for fieldname in self.honeypot_fieldnames:
            if cd[fieldname]:
                raise forms.ValidationError(
                    "Thank you, non-human visitor. Please keep trying to fill in the form.")
        return cd
项目:Django    作者:englam    | 项目源码 | 文件源码
def register(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            return HttpResponseRedirect('/accounts/login/')
    else:
        form = UserCreationForm()
    return render_to_response('register.html', RequestContext(request,locals()))
项目:djangocms-onepage-example    作者:thorgate    | 项目源码 | 文件源码
def __init__(self, *args, **kwargs):
        super(UserCreationForm, self).__init__(*args, **kwargs)

        if 'username' in self.fields:
            del self.fields['username']
项目:dsksdblog    作者:DSKSD    | 项目源码 | 文件源码
def register(request):
     if request.method == 'POST':
         form = UserCreationForm(request.POST)
         if form.is_valid():
             form.save()
             return render_to_response('registration/registration_complete.html')

     else:
         form = UserCreationForm()
     token = {}
     token.update(csrf(request))
     token['form'] = form

     return render_to_response('registration/registration_form.html', token)
项目:combining-forms-dynamically    作者:dhavalmanjaria    | 项目源码 | 文件源码
def save(self, commit=True):
        user = super(UserCreationForm, self).save(commit=False)

        LOG.debug("user_type from form:" + self.cleaned_data['user_type'])
        if commit:
            user.save()  # First save the created user,
            user.basicinfo.user_type = self.cleaned_data['user_type']
            user.save()  # save the basic info

        return user
项目:sdn    作者:ray6    | 项目源码 | 文件源码
def register(request):
    s = "%12x" % uuid.getnode()
    mac = ":".join(x+y for x, y in zip(s[::2], s[1::2]))

    if request.method == 'POST':
        form = UserCreationForm(request.POST)

        if form.is_valid():
            user = form.save()
            Usertable.objects.create(name=user,address=mac)
            return HttpResponseRedirect('/accounts/login/')
    else:
        form = UserCreationForm()
    return render_to_response('register.html',RequestContext(request,locals()))
项目:DjangoWebProject    作者:wrkettlitz    | 项目源码 | 文件源码
def save(self, commit=True):
        user = super(UserCreationForm, self).save(commit=False)
        user.email = self.cleaned_data["email"]
        user.username = self.cleaned_data["username"]
        if commit:
            user.save()
        return user
项目:cloudnined    作者:tortuvshin    | 项目源码 | 文件源码
def save(self, commit=True):
        user = super(UserCreationForm, self).save(commit=False)
        user.email = self.cleaned_data['email']

        if commit:
            user.save()

        return user
项目:simple-signup    作者:sibtc    | 项目源码 | 文件源码
def signup(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return redirect('home')
    else:
        form = UserCreationForm()
    return render(request, 'signup.html', {'form': form})
项目:iguana    作者:iguana-project    | 项目源码 | 文件源码
def __init__(self, *args, **kwargs):
        super(UserCreationForm, self).__init__(*args, **kwargs)
        self.fields['username'].widget.attrs.pop('autofocus', None)
项目:Django-WEb    作者:Djangoclub    | 项目源码 | 文件源码
def register(request):
    '''?????????????'''
    if request.method != 'POST':
        form = UserCreationForm()
    else:
        # ???????
        form =UserCreationForm(data=request.POST)
        if form.is_valid():
            new_user = form.save()
            #???????????????
            authenticated_user = authenticate(username=new_user.username, password=request.POST['password1'])
            login(request, authenticated_user)
            return HttpResponseRedirect(reverse('learning_logs:index'))
    context = {'form': form}
    return  render (request, 'user/register.html', context)
项目:ultimateRPS    作者:lboisson    | 项目源码 | 文件源码
def inscription(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return redirect('/')
    else:
        form = UserCreationForm()
    return render(request, 'inscription.html', {'form': form})