[IMP] Allow to specify http code for request.redirect()
authorFabien Meghazi <fme@openerp.com>
Tue, 26 Aug 2014 09:48:21 +0000 (11:48 +0200)
committerFabien Meghazi <fme@openerp.com>
Tue, 26 Aug 2014 09:50:13 +0000 (11:50 +0200)
addons/website/controllers/main.py
addons/website/models/ir_http.py

index 28194a6..0d2dd78 100644 (file)
@@ -58,7 +58,7 @@ class Website(openerp.addons.web.controllers.main.Home):
         }
         # /page/website.XXX --> /page/XXX
         if page.startswith('website.'):
-            return request.redirect('/page/'+page[8:])
+            return request.redirect('/page/' + page[8:], code=301)
         elif '.' not in page:
             page = 'website.%s' % page
 
index 76386f0..1f4f326 100644 (file)
@@ -82,7 +82,7 @@ class ir_http(orm.AbstractModel):
                 self._authenticate(func.routing['auth'])
             else:
                 self._auth_method_public()
-            request.redirect = lambda url: werkzeug.utils.redirect(url_for(url))
+            request.redirect = lambda url, code=302: werkzeug.utils.redirect(url_for(url), code)
             request.website = request.registry['website'].get_current_website(request.cr, request.uid, context=request.context)
             if first_pass:
                 request.lang = request.website.default_lang_code