[REM] Removed preload_records

This feature will be stripped down and moved to server's ir.http#_dispatch()

bzr revid: fme@openerp.com-20140123150448-3hhlj4vytr82k88n
This commit is contained in:
Fabien Meghazi 2014-01-23 16:04:48 +01:00
parent 8ee6f53005
commit d6690455e9
9 changed files with 0 additions and 43 deletions

View File

@ -71,23 +71,6 @@ def urlplus(url, params):
def quote_plus(value):
return urllib.quote_plus(value.encode('utf-8') if isinstance(value, unicode) else str(value))
def preload_records(*args, **kwargs):
""" This helper allows to check the existence and prefetch one or many browse_records at once.
If the browse record(s) does not exists in the db it will raise a LazyResponse
"""
field = kwargs.pop('field', 'name')
on_error = kwargs.pop('on_error', 'website.404')
error_code = kwargs.pop('error_code', 404)
try:
for arg in args:
if isinstance(arg, orm.browse_record):
arg[field]
elif isinstance(arg, orm.browse_record_list):
[record[field] for record in arg]
except:
lazy_error = request.website.render(on_error, status_code=error_code)
raise werkzeug.exceptions.HTTPException(response=lazy_error)
class website(osv.osv):
def _get_menu_website(self, cr, uid, ids, context=None):
# IF a menu is changed, update all websites

View File

@ -21,7 +21,6 @@
from openerp.addons.web import http
from openerp.addons.web.http import request
from openerp.addons.website.models import website
from openerp.tools.translate import _
from openerp import SUPERUSER_ID
@ -98,7 +97,6 @@ class WebsiteBlog(http.Controller):
"""
BYPAGE = 10
website.preload_records(category, tag)
cr, uid, context = request.cr, request.uid, request.context
blog_post_obj = request.registry['blog.post']
@ -180,8 +178,6 @@ class WebsiteBlog(http.Controller):
- 'nav_list': a dict [year][month] for archives navigation
"""
website.preload_records(blog_post)
pager_url = "/blogpost/%s" % blog_post.id
pager = request.website.pager(

View File

@ -7,7 +7,6 @@ from openerp import SUPERUSER_ID
from openerp.addons.web import http
from openerp.tools.translate import _
from openerp.addons.web.http import request
from openerp.addons.website.models import website
from openerp.addons.website_partner.controllers import main as website_partner
@ -97,7 +96,6 @@ class WebsiteCrmPartnerAssign(http.Controller):
@http.route(['/partners/<int:partner_id>/', '/partners/<partner_name>-<int:partner_id>/'], type='http', auth="public", website=True, multilang=True)
def partners_ref(self, partner_id, **post):
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
website.preload_records(partner)
values = website_partner.get_partner_template_value(partner)
if not values:
return self.partners(**post)

View File

@ -5,7 +5,6 @@ from openerp import SUPERUSER_ID
from openerp.addons.web import http
from openerp.tools.translate import _
from openerp.addons.web.http import request
from openerp.addons.website.models import website
from openerp.addons.website_partner.controllers import main as website_partner
import urllib
@ -79,7 +78,6 @@ class WebsiteCustomer(http.Controller):
@http.route(['/customers/<int:partner_id>/', '/customers/<partner_name>-<int:partner_id>/'], type='http', auth="public", website=True, multilang=True)
def customer(self, partner_id, **post):
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
website.preload_records(partner)
values = website_partner.get_partner_template_value(partner)
if not values:
return self.customers(**post)

View File

@ -23,7 +23,6 @@ from openerp import SUPERUSER_ID
from openerp.addons.web import http
from openerp.addons.web.http import request
from openerp.tools.translate import _
from openerp.addons.website.models import website
from openerp.addons.website.controllers.main import Website as controllers
controllers = controllers()
@ -163,7 +162,6 @@ class website_event(http.Controller):
@http.route(['/event/<model("event.event"):event>/page/<page:page>'], type='http', auth="public", website=True, multilang=True)
def event_page(self, event, page, **post):
website.preload_records(event, on_error="website_event.404")
values = {
'event': event,
'main_object': event
@ -172,7 +170,6 @@ class website_event(http.Controller):
@http.route(['/event/<model("event.event"):event>'], type='http', auth="public", website=True, multilang=True)
def event(self, event, **post):
website.preload_records(event, on_error="website_event.404")
if event.menu_id and event.menu_id.child_id:
target_url = event.menu_id.child_id[0].url
else:
@ -183,7 +180,6 @@ class website_event(http.Controller):
@http.route(['/event/<model("event.event"):event>/register'], type='http', auth="public", website=True, multilang=True)
def event_register(self, event, **post):
website.preload_records(event, on_error="website_event.404")
values = {
'event': event,
'main_object': event,

View File

@ -21,7 +21,6 @@
from openerp.addons.web import http
from openerp.addons.web.http import request
from openerp.addons.website.models import website
from openerp.addons.website.controllers.main import Website as controllers
import re
@ -33,14 +32,11 @@ class website_event(http.Controller):
@http.route(['/event/<model("event.event"):event>/track/<model("event.track"):track>'], type='http', auth="public", website=True, multilang=True)
def event_track_view(self, event, track, **post):
# TODO: not implemented
website.preload_records(event, on_error="website_event.404")
website.preload_records(track)
values = { 'track': track, 'event': track.event_id, 'main_object': track }
return request.website.render("website_event_track.track_view", values)
@http.route(['/event/<model("event.event"):event>/agenda/'], type='http', auth="public", website=True, multilang=True)
def event_agenda(self, event, tag=None, **post):
website.preload_records(event, on_error="website_event.404")
values = {
'event': event,
'main_object': event,
@ -52,8 +48,6 @@ class website_event(http.Controller):
'/event/<model("event.event"):event>/track/tag/<model("event.track.tag"):tag>'
], type='http', auth="public", website=True, multilang=True)
def event_tracks(self, event, tag=None, **post):
website.preload_records(event, on_error="website_event.404")
website.preload_records(tag)
searches = {}
if tag:
@ -82,7 +76,6 @@ class website_event(http.Controller):
@http.route(['/event/<model("event.event"):event>/track_proposal/'], type='http', auth="public", website=True, multilang=True)
def event_track_proposal(self, event, **post):
website.preload_records(event, on_error="website_event.404")
values = { 'event': event }
return request.website.render("website_event_track.event_track_proposal", values)

View File

@ -4,7 +4,6 @@ import openerp
from openerp import SUPERUSER_ID
from openerp.addons.web import http
from openerp.addons.web.http import request
from openerp.addons.website.models import website
from openerp.addons.website_partner.controllers import main as website_partner
from openerp.tools.translate import _
@ -95,7 +94,6 @@ class WebsiteMembership(http.Controller):
@http.route(['/members/<int:partner_id>/', '/members/<partner_name>-<int:partner_id>/'], type='http', auth="public", website=True, multilang=True)
def partners_ref(self, partner_id, **post):
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
website.preload_records(partner)
values = website_partner.get_partner_template_value(partner)
if not values:
return self.members(**post)

View File

@ -4,7 +4,6 @@ import openerp
from openerp import SUPERUSER_ID
from openerp.addons.web import http
from openerp.addons.web.http import request
from openerp.addons.website.models import website
import werkzeug
@ -38,7 +37,6 @@ class WebsitePartner(http.Controller):
def partner(self, partner_id, **post):
""" Route for displaying a single partner / customer. """
partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
website.preload_records(partner)
values = get_partner_template_value(partner)
if not values:
raise werkzeug.exceptions.NotFound

View File

@ -7,7 +7,6 @@ import werkzeug
from openerp import SUPERUSER_ID
from openerp.addons.web import http
from openerp.addons.web.http import request
from openerp.addons.website.models import website
PPG = 20 # Products Per Page
PPR = 4 # Products Per Row
@ -258,8 +257,6 @@ class Ecommerce(http.Controller):
@http.route(['/shop/product/<model("product.template"):product>/'], type='http', auth="public", website=True, multilang=True)
def product(self, product, search='', category='', filters='', **kwargs):
website.preload_records(product, on_error="website_sale.404")
category_obj = request.registry.get('product.public.category')
category_ids = category_obj.search(request.cr, request.uid, [], context=request.context)