[ADD] website: added support for invoking a server action through controller

website: added website/action/<id_or_xml_id> route, that runs the server action designed
by its id or xml_id. Only code server action returning a template give a result. The
template is displayed. Other or not existing server actions redirect to the homepage.

website: added an override of ir_actions_server: evaluation context gets request for
evaluation, to enable request.render(template_name); also returns template the same
way action is returned for code server action;

bzr revid: tde@openerp.com-20140205090447-2hppg7818nx1wfzh
This commit is contained in:
Thibault Delavallée
2014-02-05 10:04:47 +01:00
parent 6400ffb5e5
commit 8df6b16784
4 changed files with 74 additions and 2 deletions
+18
View File
@@ -1,5 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="0">
<template id="website.test0" name="Test0">
<p>Super cacaprout</p>
</template>
<record id="action_website_test" model="ir.actions.server">
<field name="name">Website Test</field>
<field name="condition">True</field>
<field name="model_id" ref="base.model_res_partner"/>
<field name="code">
values = {}
template = request.website.render("website.test0", values)
</field>
<field name="state">code</field>
<field name="type">ir.actions.server</field>
</record>
</data>
<data noupdate="1">
<record id="default_website" model="website">
<field name="name">www.openerp.com</field>