我试图在Django中为我的.save()创建一个保存方法(.save()),但是我一直收到一个错误消息--没有定义名称'SaveInput‘。
from django.shortcuts import render
from django.shortcuts import redirect
from django.urls import reverse
from django.http import HttpResponseRedirect
from django.http import HttpResponse
from django import forms
import markdown2
from . import util
class AddPageForm(forms.Form):
title = forms.CharField(max_length=20)
content = forms.CharField(widget=forms.Textarea(
attrs={
"class": "form-control",
"placeholder": "Tell us more!"
})
)
def add_page(request):
submitted = False
if request.method == "POST":
form = AddPageForm(request.POST)
entries = util.list_entries()
if form.is_valid():
title = form.cleaned_data['title']
content = form.cleaned_data['content']
saveInput = SaveInput(title=data['title'], content=data['content'])
saveInput.save()
for entry in entries:
if title.upper() == entry.upper():
context = {
"title": title,
"content": content
}
return render(request, "encyclopedia/errorpage.html", context)
else:
return HttpResponseRedirect(reverse("/encyclopedia:index/?submitted=True"))
else:
return render (request, "encyclopedia/addpage.html", {
"form": AddPageForm()
})
Traceback Switch to copy-and-paste view
C:\Users\USER\AppData\Local\Programs\Python\Python310\lib\site-packages\django\core\handlers\exception.py, line 47, in inner
response = get_response(request) …
▶ Local vars
C:\Users\USER\AppData\Local\Programs\Python\Python310\lib\site-packages\django\core\handlers\base.py, line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs) …
▶ Local vars
C:\Users\USER\Downloads\wiki\wiki\encyclopedia\views.py, line 84, in add_page
saveInput = SaveInput(title=data['title'], content=data['content']) …
▶ Local vars这是我试图定义方法并导致错误消息的部分。
saveInput = SaveInput(title=data['title'], content=data['content'])
saveInput.save()请告诉我我做错了什么,因为我之前看到的关于相同保存方法的示例不需要定义此方法。
此外,如果以前添加了一个没有模型.filter的相同标题的页面,那么如何确保不能创建任何页面。
谢谢。
发布于 2021-12-13 21:24:21
您需要在您的SaveInput中导入或定义views.py
https://stackoverflow.com/questions/70341042
复制相似问题