diff options
| author | Adrian Torres <adt@odoo.com> | 2018-07-11 13:06:00 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-07-11 13:06:00 +0200 |
| commit | c002e2eb379e8a3db90b45269f8ff2b7e246c8b2 (patch) | |
| tree | c4f737ce584d60d73cceadbc7e21ab06ab9c3997 /odoo/addons/base | |
| parent | 5bf5d45b7d1ac381a1419c010352e56b79515599 (diff) | |
[IMP] allow installing demo data post db init
Intended for demo / throwaway databases only
Task-ID: 1856493
Diffstat (limited to 'odoo/addons/base')
| -rw-r--r-- | odoo/addons/base/__manifest__.py | 1 | ||||
| -rw-r--r-- | odoo/addons/base/data/ir_demo_data.xml | 23 | ||||
| -rw-r--r-- | odoo/addons/base/models/__init__.py | 3 | ||||
| -rw-r--r-- | odoo/addons/base/models/ir_demo.py | 15 |
4 files changed, 41 insertions, 1 deletions
diff --git a/odoo/addons/base/__manifest__.py b/odoo/addons/base/__manifest__.py index 9caa89917c1..99f634350e2 100644 --- a/odoo/addons/base/__manifest__.py +++ b/odoo/addons/base/__manifest__.py @@ -20,6 +20,7 @@ The kernel of Odoo, needed for all installation. 'data/report_paperformat_data.xml', 'data/res_currency_data.xml', 'data/res_country_data.xml', + 'data/ir_demo_data.xml', 'security/base_groups.xml', 'security/base_security.xml', 'views/base_menus.xml', diff --git a/odoo/addons/base/data/ir_demo_data.xml b/odoo/addons/base/data/ir_demo_data.xml new file mode 100644 index 00000000000..e108590147a --- /dev/null +++ b/odoo/addons/base/data/ir_demo_data.xml @@ -0,0 +1,23 @@ +<odoo> + <record model="ir.actions.act_window" id="demo_force_install_action"> + <field name="name">Load demo data</field> + <field name="res_model">ir.demo</field> + <field name="view_mode">form</field> + <field name="target">new</field> + </record> + + <record model="ir.ui.view" id="demo_force_install_form"> + <field name="name">ir.demo.form</field> + <field name="model">ir.demo</field> + <field name="arch" type="xml"> + <form> + <p>Demo data should only be used on test databases. Once they are loaded, they cannot be removed.</p> + <p>Are you sure you want to load demo data?</p> + <footer> + <button name="install_demo" string="Load demo data" type="object" class="btn-primary"/> + <button special="cancel" string="Discard" class="btn-default"/> + </footer> + </form> + </field> + </record> +</odoo> diff --git a/odoo/addons/base/models/__init__.py b/odoo/addons/base/models/__init__.py index 59d125ab30e..4506929a5c5 100644 --- a/odoo/addons/base/models/__init__.py +++ b/odoo/addons/base/models/__init__.py @@ -27,6 +27,7 @@ from . import ir_http from . import ir_logging from . import ir_property from . import ir_module +from . import ir_demo from . import report_paperformat from . import res_country from . import res_lang @@ -35,4 +36,4 @@ from . import res_bank from . import res_config from . import res_currency from . import res_company -from . import res_users
\ No newline at end of file +from . import res_users diff --git a/odoo/addons/base/models/ir_demo.py b/odoo/addons/base/models/ir_demo.py new file mode 100644 index 00000000000..34e4292be28 --- /dev/null +++ b/odoo/addons/base/models/ir_demo.py @@ -0,0 +1,15 @@ +from odoo import models +from odoo.modules.loading import force_demo + + +class IrDemo(models.TransientModel): + + _name = 'ir.demo' + + def install_demo(self): + force_demo(self.env.cr) + return { + 'type': 'ir.actions.act_url', + 'target': 'self', + 'url': '/web', + } |
