장고 웹 앱을 만드는 동안 문제가 있습니다. 사용자가 자신의 계정에 로그인하면 세션을 저장해야하고 로그인 페이지를 다시 방문하면 해당 사용자의 홈 페이지로 리디렉션해야합니다. 나는 사용을 시도했다장고 (Django) 세션 만들기
여기 내 코드입니다.
Views.py
from django.http import HttpResponse
from django.shortcuts import render_to_response
from django.contrib.auth.decorators import login_required
from django.template import RequestContext
def index(request):
return HttpResponse("Index Page")
@login_required
def home(request):
ctx = {}
return render_to_response('auth/home.html',ctx, context_instance = RequestContext(request))
Urls.py
from django.conf.urls.defaults import *
from django.contrib.auth.views import login, logout
urlpatterns = patterns('',
url(r'^$','apps.auth.views.index'),
)
urlpatterns = patterns('',
url(r'cc/', login, kwargs = {'template_name' : 'auth/cc.html'} , name = 'cc_login'),
url(r'logout/', logout, name = 'cc_logout'),
url(r'home/','apps.auth.views.home', name = 'cc_home'),
)
덕분에 buched하지만 매개 변수로 전달 될 때 내 템플릿을 렌더링 할 수 없습니다입니다. 템플릿에는 장고 django {{form.as_p}} 양식이 들어 있습니다. 그것은 그것을 보지 않습니다. 어떤 제안? – PythonEnthusiast
정확하게 귀하의 질문을 이해할 수 없지만 렌더 함수를 제대로 호출하지 않아서 문제가 발생할 수 있습니다. 여기 https://docs.djangoproject.com/en/dev/topics/http/shortcuts/에서 설명을 찾을 수 있습니다. render 함수를 호출하려면 적절한 매개 변수를 전달해야합니다 (예 : render (request, 'your_template.html', {컨텍스트 변수 사전}). – buched
더 명확하게 설명하기 위해 'form' 렌더링 컨텍스트 사전에서 사용하는 .as_p '는 다음과 같이 전달되어야합니다. render (request,'your_template.html ', {'form ': your_form}) – buched