簡體   English   中英

未定義全局名稱“ localset”

[英]global name 'localset' is not defined

我得到這個錯誤。

未定義全局名稱“ localset”

以下是我的代碼。

from django.shortcuts import render, render_to_response, RequestContext
from forms import SignUpForm


# Create your views here.
def home(request):
    form= SignUpForm(request.POST or None)
    if form.is_valid():
    save_it=form.save(commit=False)
    save_it.save()
    return render_to_response("signup.html", localset, context_instance= RequestContext(request))

在代碼的最后一行:

return render_to_response("signup.html", localset, context_instance= RequestContext(request))

未定義變量localset

@Amin對於您的原始問題,答案是正確的。 您確實在render_to_response函數中設置了一個變量,該變量未在視圖函數中定義。

您應該將render_to_response行更改為如下所示:

return render_to_response(
    'signup.html', context_instance=RequestContext(request)
)

您在這里還應該注意一些事情。 根據django文檔 ,自django 1.8起已棄用context_instance

從版本1.8開始不推薦使用 context_instance參數不推薦使用。 請改用render()函數,該函數始終使RequestContext可用。

現在,如果要傳遞上下文,則應該使用render()函數。 現在這將意味着您的代碼將如下所示:

from django.shortcuts import render
from forms import SignUpForm


# Create your views here.
def home(request):
    form= SignUpForm(request.POST or None)
    if form.is_valid():
        save_it=form.save(commit=False)
        save_it.save()
    return render(request, "signup.html")

從django.shortcuts從表單導入SignUpForm導入渲染,render_to_response,RequestContext

在這里創建您的視圖。

def home(request):form = SignUpForm(request.POST或None)如果form.is_valid():save_it = form.save(commit = False)

    save_it.save()
return render_to_response("signup.html", locals(), context_instance= RequestContext(request))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM