Как создать функцию, позволяющую пользователю редактировать собственный профиль?Django позволяет пользователю редактировать свой профиль
views.py
@login_required
def edit_user(request):
if '_auth_user_id' in request.session:
userId = request.session['_auth_user_id']
userDetails = User.objects.get(pk=userId)
if request.method == 'POST':
form = UserProfileForm(request.POST, request.FILES)
userDetails.first_name = request.POST['firstname']
userDetails.last_name = request.POST['lastname']
userDetails.email = request.POST['email']
userDetails.zip = request.POST['zip']
if form.is_valid():
userDetails.save()
return HttpResponseRedirect('/edit_user/')
else:
form = UserProfileForm()
variables = RequestContext(request, {'form': form})
return render_to_response('edit_user.html',variables,)
forms.py
class UserProfileForm(forms.Form):
email = forms.EmailField(label='Email', max_length=254)
firstname = forms.CharField(label='First Name', max_length=20)
lastname = forms.CharField(label='Last Name', max_length=20)
zip = forms.CharField(label='Zipcode', max_length=5)
edit_user.html
<form class="form-signin" action="/edit_user/" method="post" enctype="multipart/form-data">{% csrf_token %}
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="btn btn-info"> Save Edits</button>
</form>
Это не будет отображать поля, он показывает пустой: http://gyazo.com/48ee38b22434aae418cfe61accb00bd8.png
Спасибо за быстрый ответ. См. Мой отредактированный пост, он не отображает никаких полей. Благодарю. – user4234041
@ user4234041 включают 'enctype =" multipart/form-data "' это также в теге
И ваш 'render_to_response' не имеет' form' dict .. Вы получили его? –