【发布时间】:2021-01-31 14:27:07
【问题描述】:
基本上,我正在尝试通过 form.as_p 列出值,但它不起作用。它并不是真的不起作用,但它只有在我按下提交后才起作用(它只出现在我的模板中)。我相信我将上下文放置在错误的位置或错误的缩进中,但我不确定我应该将context['form'] = form 转移到哪里。我试图改变它,但它说在赋值之前引用了 lcoal 变量。有人可以建议吗?
之所以把它放在else下面是因为如果有错误我想显示错误
def create_blog_view(request):
context = {}
user = request.user
if request.method == 'POST':
form = CreateBlogPostForm(request.POST or None, request.FILES or None)
if form.is_valid():
obj= form.save(commit = False)
author = Account.objects.filter(email=user.email).first()
obj.author = author
obj.save()
return redirect('HomeFeed:main')
else:
context['form'] = form
return render(request, "HomeFeed/create_blog.html", context)
def create_blog_view(request):
context = {}
user = request.user
form = CreateBlogPostForm()
if request.method == 'POST':
form = CreateBlogPostForm(request.POST or None, request.FILES or None)
if form.is_valid():
obj= form.save(commit = False)
author = Account.objects.filter(email=user.email).first()
obj.author = author
obj.save()
return redirect('HomeFeed:main')
else:
context['form'] = form
context['form'] = form
return render(request, "HomeFeed/create_blog.html", context)
【问题讨论】:
标签: django django-models django-views django-forms django-templates