Muh*_*mam 6 python django google-app-engine middleware urlconf
我正在研究Google App Engine上的Django项目.我有一个像这样的网址:
http://localhost:8080/[company]/projects/project
请注意,这[company]是我在urls.py中定义的URL参数,如:
(r'(^[a-zA-Z0-9-_.]*)/projects/project/(\d*)', 'projects.views.project_form'),
我想[company]从中间件获取值,我将GAE数据存储空间设置为[company]值.
是否可以[company]从process_request中间件类方法中传递的请求对象中获取参数?
如果您使用的是process_view中间件,则可以访问views参数,从而访问公司值.看看函数的定义:
def process_view(self, request, view_func, view_args, view_kwargs)
...
Run Code Online (Sandbox Code Playgroud)
view_args是将传递给视图的位置参数列表,view_kwargs是将传递给视图的关键字参数的字典.
所以你应该能够从那里抓住它,例如:
def process_view(self, request, view_func, view_args, view_kwargs):
company = view_kwargs.get('company', None)
Run Code Online (Sandbox Code Playgroud)
以下是django书中有关如何将您网址中的已命名和未命名组转换为视图中的args和kwargs的更多信息:
http://www.djangobook.com/en/1.0/chapter08/#cn38
尤其
这个[named url groups]完成与前一个示例完全相同的操作,但有一个细微差别:捕获的值作为关键字参数而不是位置参数传递给视图函数.