gpt4 book ai didi

python - 赋值前引用的局部变量 'context_dict'

转载 作者:太空宇宙 更新时间:2023-11-03 18:02:31 26 4
gpt4 key购买 nike

有人可以解释一下这个错误是什么意思吗?什么是作业? context_dict 应该在哪里?或者我犯了其他错误?我是 Django 新手。非常感谢。

def add_page(request, category_name_slug):
try:
cat = Category.objects.get(slug=category_name_slug)
except Category.DoesNotExist:
cat = None

if request.method == 'POST':
form = PageForm(request.POST)
if form.is_valid():
if cat:
page = form.save(commit=False)
page.category = cat
page.views = 0
page.save()
# probably better to use a redirect here.
return category(request, category_name_slug)
else:
print form.errors
else:
form = PageForm()

context_dict = {'form':form, 'category': cat}

return render(request, 'rango/add_page.html', context_dict)

我收到此错误:

local variable 'context_dict' referenced before assignment

异常是通过 return render(reqyest, 'rango/add_page.html', context_dict) 指示我在线

相同的回溯

最佳答案

我再次重构了我的代码,这种方式有效。我的 context_dict 现在位于 if 外部语句之外,否则: form = PageForm() 位于外部 if 语句中,而不是像以前那样位于内部 if 语句中。谢谢你们帮助我。

def add_page(request, category_name_slug):
try:
cat = Category.objects.get(slug=category_name_slug)
except Category.DoesNotExist:
cat = None

if request.method == 'POST':
form = PageForm(request.POST)
if form.is_valid():
if cat:
page = form.save(commit=False)
page.category = cat
page.views = 0
page.save()
# probably better to use a redirect here.
return category(request, category_name_slug)
else:
print form.errors
else:
form = PageForm()

context_dict = {'category': cat, 'form': form}

return render(request, 'rango/add_page.html', context_dict)

关于python - 赋值前引用的局部变量 'context_dict',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27462104/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com