django - 为什么我的模板没有从一个函数中获取视图数据?
问题描述
我创建了一个简单的文件上传应用程序。一切正常。然后我想添加简单的登录,现在我遇到了问题。这些是我的看法
def login(request):
if request.method == 'POST':
form = LoginForm(request.POST)
if form.is_valid():
cd = form.cleaned_data
user = authenticate(username=cd['username'],password=cd['password'])
if user is not None:
if user is active:
login(request,user)
return HttpResponse('Authenticated successfully')
else:
return HttpResponse('Disabled account')
else:
return HttpResponse('Invalid login')
else:
form=LoginForm()
return render(request,'account/login.html',{'form': form})
def list(request):
# Handle file upload
if request.method == 'POST':
form = DocumentForm(request.POST, request.FILES)
if form.is_valid():
newdoc = Document(docfile=request.FILES['docfile'])
newdoc.save()
# Redirect to the document list after POST
return HttpResponseRedirect(reverse('list'))
else:
form = DocumentForm() # A empty, unbound form
# Load documents for the list page
documents = Document.objects.all()
# Render list page with the documents and the form
return render(request,'list.html',{'documents': documents, 'form': form})
这是文件上传/网址
from django.conf.urls import url
from fileupload.views import list
from fileupload.views import login
urlpatterns = [
url(r'^list/$', list, name='list'),
url(r'^login/$', login, name='login'),
]
我的表格
class LoginForm(forms.Form):
username = forms.CharField()
password = forms.CharField(widget=forms.PasswordInput)
class DocumentForm(forms.Form):
docfile = forms.FileField(label='Select a file')
当我去 http://127.0.0.1:8000/fileupload/list/ 一切正常。如果我尝试 http://127.0.0.1:8000/login/ 我得到了这个
我很困惑,因为模板是从一个乐趣而不是另一个乐趣中获取数据。如何调试这个?
解决方案
推荐阅读
- node.js - 状态为200且数据为空时axios拦截器重试http请求
- python - 如何用 GitPython 结束 git 进程?
- c# - 有没有办法使用 C# 在 MongoDB 中的集合之间创建联合
- c++ - 避免 std::function 的开销
- robotframework - 如何POST参数到服务器?
- python - 面临问题,同时在 re.compile python regex 中创建 List
- python - 在子模型之前创建模型时引发“decimal.DivisionUndefined”错误
- javascript - 如何使用 flowjs 从到达路由器键入 Match 组件
- java - 用连字符分隔的 Java 日期模式
- node.js - 如何在 docker run 中设置环境变量