아래 내용이 내 views.py.
입니다. POST가 끝나면 사용자는 5 개의 항목이 표시된 성공 페이지를 표시합니다. 동시에 나는 environment
을 사용자에게 보여주고 싶다. 그래서 나는 아래와 같이 (environment
을 인자로 전달했다)했다. redirect
이 발생하는 동안 나는 그걸 얻을 수없는 success
과 environment
과 일치하는 것을 찾으려고합니다. 아마도 이것을 처리하기 위해 올바른 정규식이 필요하고 이것을 처리하는 방법을 모르겠습니다.장고 렌더링에서 NoReverseMatch 오류가 발생했습니다.
def order_create(request):
cart = ItemObject.objects.all()
if request.method == 'POST':
...
environment = envi_dict1.difference(item_dict1)
return HttpResponseRedirect(reverse('success', {'environment': environment}))
else:
form = ItemObjectCreateForm()
return render(request,
'index.html',
{'form': form})
def successView(request):
return render(request, 'success.html', {'items': ItemObject.objects.filter(gp_code='Unknown')[:5]})
는 urls.py
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^export_action/', include("export_action.urls", namespace="export_action")),
url('^business-logic/', include('business_logic.urls')),
url('^index/', views.order_create),
url(r'^success/', views.successView, name='success')
]
내가 점점 오전 오류이
NoReverseMatch at /index/
Reverse for 'success' with keyword arguments '{u'environment': set([u'Test1'])}' not found. 1 pattern(s) tried: ['success/']
해당 환경을 세션에 저장하고 성공 페이지에 표시 할 수 있습니다. –
URL 이름과 함께 앱 이름을 전달해야 메소드를 바꿀 수 있습니다. 역순으로 말하면 ('YourAppName : success', kwargs = ..) – Ankush
@SandeepBalagopal, 내가 말했듯이 세션을 사용했습니다. views.py 아래에 request.session [ 'environment'] = 환경이 있고 html에서는 request.session.environment를 사용합니다. –