У меня проблема.Я пытаюсь сделать форму редактирования с Django.Но когда я иду на URL для редактирования, например: / adminview / edit / 1 /
я получаю сообщение:
TypeError at /adminview/edit/1/
int() argument must be a string, a bytes-like object or a number, not
'builtin_function_or_method'
Request Method: GET
Request URL: http://127.0.0.1:8000/adminview/edit/1/
Django Version: 2.1.5
Exception Type: TypeError
это мой urls.py:
app_name = 'adminview'
urlpatterns = [
url(r'^$', index_admin, name="adminview"),
url(r'^clasification', clasification, name="clasification"),
url(r'^edit/(?P<id_category>\d+)/$', edit_clasificacion, name="edit_clasificacion"),
]
и это часть моего файла views.py, где у меня есть функция, которую я пытаюсь построить:
def edit_clasificacion(request, id_category):
clasificacion = Clasificacion.objects.get(id=id)
if request.method == 'GET':
form = ClasificacionForm(instance=clasificacion)
else:
form = ClasificacionForm(request.POST, instance=clasificacion)
if form.is_valid():
form.save()
return redirect('article:index')
return render(request, 'adminview/clasification.html', {'form':form})
это мой класс forms.py:
классClasificacionForm (forms.ModelForm):
class Meta:
model = Clasificacion
fields = [
'nombre_clasificacion',
]
labels = {
'nombre_clasificacion': 'Nombre de categoría',
}
widgets = {
'nombre_clasificacion': forms.TextInput(attrs={'class':'form-control'})
}
любая помощь?Большое спасибо!