1

我正在尝试使用SSLRedirect中间件将我的一些 Django 视图重定向到 https。

我创建了中间件,但在保护中间件片段中描述的特定 url 路径时遇到了麻烦。当我添加{'SSL':True}到我的视图关键字时,我得到这个语法错误:'关键字 arg 之后的非关键字 arg'。我的 urls.py 是

from django.conf.urls.defaults import patterns, include, url
from django.views.generic.simple import direct_to_template

from post.views import *

urlpatterns = patterns('',      
    url(r'^$', turk_post, name='post', {'SSL':True}),
)
4

1 回答 1

3

代替:

url(r'^$', turk_post, name='post', {'SSL':True}),

和:

url(r'^$', turk_post, name='post', kwargs={'SSL':True}),

Djangourl是这样定义的函数:

def url(regex, view, kwargs=None, name=None, prefix=''):
    # et cetera

(因此您的错误是函数需要关键字参数)

于 2013-10-07T14:57:27.207 回答