Я создал свои модели, используя модель пользователя django. Я могу выполнить функцию редактирования созданной формы. Теперь я хочу выполнить УДАЛИТЬ определенные данные пользователя с помощью кнопки УДАЛИТЬ. Вот мой код
forms.py
class EditProfileForm(forms.ModelForm):
class Meta():
model = User
fields = ['first_name','last_name','username','email','password']
help_texts={
'username': None
}
views.py
def index(request):
form = GithubInfo(request.POST)
name=''
if form.is_valid():
name = form.cleaned_data.get("name")
form.save()
context = {'form':form , 'name':name}
return render(request,'signupapp/index.html',context)
def edit_profile(request):
user = request.user
form = EditProfileForm(request.POST or None, initial={'first_name':user.first_name, 'last_name':user.last_name, 'username':user.username, 'email':user.email, 'password':user.password})
if request.method == 'POST':
if form.is_valid():
user.first_name = request.POST['first_name']
user.last_name = request.POST['last_name']
user.username = request.POST['username']
user.email = request.POST['email']
user.password = request.POST['password']
user.save()
return HttpResponseRedirect(reverse('signupapp:index'))
context = {"form": form}
return render(request, "signupapp/edit_profile.html", context)
def delete_profile(request, username):
profile = UserProfileInfo.objects.get(username=username)
if request.method == 'POST':
profile.delete()
return HttpResponseRedirect(reverse('signupapp:index'))
return render(request, "signupapp/delete_profile.html", {'profile': profile})
edit_profile.html
<form method="POST" action="" class="" >
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Save</button>
</form>
delete_profile.html
<form action="" method ="POST">
{% csrf_token %}
<p>Are you sure to delete "{{UserProfileInfo.username}}"?</p>
<input type="submit" value="Delete"/>
</form>
urls.py
url(r'^index/$',views.index,name='index'),
url(r'^edit/$', views.edit_profile, name='edit'),
url(r'^delete/<str:username>/$', views.delete_profile, name='delete')
вот мои ссылки на редактирование и удаление для редактирования и удаления деталей в
index.html
<h1>Welcome!</h1>
{% if user.is_authenticated %}
<h3>Firstname: {{ user.first_name }}</h3>
<h3>Lastname: {{ user.last_name }}</h3>
<h3>Username: {{ user.username }}</h3>
<h3>Email: {{ user.email }}</h3>
{% else %}
<h2>Register or Login if you'd like to</h2>
{% endif %}
<a href="{% url 'signupapp:edit' %}"><input type="button" value="Edit"/></a>
<a href="{% url 'signupapp:delete' %}"><input type="button" value="Delete"/></a>
Когда я запускаю этот код на сервере, я получаю эту ошибку
TypeError at /delete/
delete_profile() missing 1 required positional argument: 'username'
Может кто-нибудь помочь мне преодолеть эту ошибку.
Заранее спасибо.