Django /myapp/beds处的类型错误/
获取缺少1个必需的位置参数:“mat_number” 我是编程新手,请按照以下详细信息解决上述类型错误:Django /myapp/beds处的类型错误/,django,python-3.x,Django,Python 3.x,获取缺少1个必需的位置参数:“mat_number” 我是编程新手,请按照以下详细信息解决上述类型错误: class BedsView(View): def get_user_details(self, username, mat_number): try: user = User.objects.get(username=username) except User.DoesNotExist: return
class BedsView(View):
def get_user_details(self, username, mat_number):
try:
user = User.objects.get(username=username)
except User.DoesNotExist:
return redirect('index')
userbeds = Userbed.objects.filter(user=user, mat_number=mat_number).order_by(-posted_date)[0]
form = UserBedsForm({'mat_number':userbeds.mat_number})
return (user, userbeds,form)
@method_decorator(login_required)
def get(self, request, username, mat_number):
(user,userbeds,form) = self.get_user_details(username, mat_number)
return render(request, 'myapp/beds.html', {'userbeds':userbeds, 'selecteduser':user, 'form':form})
@method_decorator(login_required)
def post(self, request, username):
(user, userbeds, form) = self.get_user_details(username, mat_number)
form = UserBedsForm(request.POST, instance=userbeds)
if form.is_valid():
form.save(commit=True)
return redirect('beds', user. username)
else:
print(form.errors)
return render(request, 'myapp/beds.html', {'userbeds':userbeds, 'selecteduser':user, 'form':form})
在myapp url.py上
from django.urls import path
from myapp import views
from myapp.views import BedsView
app_name = 'myapp'
urlpatterns = [
path('beds/<username>/', BedsView.as_view(), name='beds'),
]
请问我该如何对这个打字错误进行排序 您的代码如下所示:
def get_user_details(self, username, mat_number):
# ...
(user, userbeds, form) = self.get_user_details(username)
需要使用两个参数调用get_user_details:username和mat_number。您只提供了一个:用户名。因此,请在方法调用中提供mat_编号或更改方法签名。请提供任何进一步的帮助。然后,请更新问题中的代码,包括get_user_details和post the stack trace=完整错误输出。请确保您发布的代码缩进的方式与Python中使用缩进的方式完全相同。缩进的方式在Python中非常重要。TypeError at/myapp/beds/ken/get missing 1必需的位置参数:“mat_number”在您的post方法中,您仍然有self.get_user_detailsusername,而没有mat_number。
def get_user_details(self, username, mat_number):
# ...
(user, userbeds, form) = self.get_user_details(username)