Hi, If the user is logged in, instead of
user = User.objects.get(username=nome) you can use user = request.user See: http://docs.djangoproject.com/en/dev/topics/auth/#authentication-in-web-requests Nuno 2010/9/17 Giovanna Ronzé <ovelh...@gmail.com>: > Dado que um usuário está logado e quer mudar sua senha, como eu faço > para o django mudar a senha daquele user sem que seja preciso que ele > preencha esse campo (do nick)? > > Bem, para resolver esse problema, primeiro eu fiz de uma forma que > necessitava do user dizer o nick. > Pesquisando, eu vi que tinha uma classe PasswordChangeForm e tentei > usar. Olha, se alguém me ensinar como se usa de fato (tanto no > urls.py, no html e no views.py se possível ^.^) tudo bem. Mas eu > realmente não consegui aplicar essa classe. > > Diante disso, voltei para ideia inicial de construir minha própria > função. O problema voltou a ser o tal do campo user. Já que o usuário > está logado, como eu 'pego' seu campo de username pelo views.py? > > Aí está a tentativa dessa função e os trechos de código relativos: > > [views.py] > > @login_required > def mudar_senha (request): > return render_to_response('matematica/mudar_senha.html') > > @login_required > def mudar_senha_dados (request): > erro = False > nome = request.POST['username'] > user = User.objects.get(username=nome) > > if request.POST['password'] == '': > erro = True > return render_to_response('matematica/mudar_senha.html', > {'erro': > erro}) > else: > user.set_password(request.POST['new_password']) > user.save() > return HttpResponseRedirect('/') > > [mudar_senha.html] > > <FORM class = "caixa" action="/mudar_senha_dados/" > method="post"> > > <LABEL>Nova senha <BR> > <INPUT name="new_password" > type="password"></LABEL> > {{ form.new_password }} > <BR> > > > <INPUT type="submit" value="Trocar senha"> > </FORM> > > [urls.py] > > (r'^mudar_senha/', 'projeto.matematica.views.mudar_senha'), > (r'^mudar_senha_dados/', > 'projeto.matematica.views.mudar_senha_dados'), > > Bem. Desde já agradeço a atenção. > > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To post to this group, send email to django-us...@googlegroups.com. > To unsubscribe from this group, send email to > django-users+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/django-users?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-us...@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.