[IMP] base: improve ir.model.data form view

A non stored, computed field 'reference' is added to ir.model.data, this
allows the form view to display a nice link to open the record in form
view.
This commit is contained in:
Géry Debongnie
2016-09-28 16:55:51 +02:00
parent 5515eb688c
commit f1affd7ae3
2 changed files with 26 additions and 17 deletions
+6
View File
@@ -858,12 +858,18 @@ class IrModelData(models.Model):
noupdate = fields.Boolean(string='Non Updatable', default=False)
date_update = fields.Datetime(string='Update Date', default=fields.Datetime.now)
date_init = fields.Datetime(string='Init Date', default=fields.Datetime.now)
reference = fields.Char(string='Reference', compute='_compute_reference', readonly=True, store=False)
@api.depends('module', 'name')
def _compute_complete_name(self):
for res in self:
res.complete_name = ".".join(filter(None, [res.module, res.name]))
@api.depends('model', 'res_id')
def _compute_reference(self):
for res in self:
res.reference = "%s,%s" % (res.model, res.res_id)
def __init__(self, pool, cr):
models.Model.__init__(self, pool, cr)
# also stored in pool to avoid being discarded along with this osv instance
+20 -17
View File
@@ -379,23 +379,26 @@
<field name="model">ir.model.data</field>
<field name="arch" type="xml">
<form string="External Identifiers">
<group>
<group>
<field name="complete_name"/>
<field name="module"/>
<field name="name"/>
</group>
<group>
<field name="display_name"/>
<field name="model"/>
<field name="res_id"/>
</group>
<group>
<field name="noupdate"/>
<field name="date_update" />
<field name="date_init" />
</group>
</group>
<sheet>
<h1>
<field name="complete_name"/>
</h1>
<group>
<group>
<field name="module"/>
<field name="name"/>
<field name="noupdate"/>
<field name="date_update" />
<field name="date_init" />
</group>
<group>
<field name="display_name"/>
<field name="model"/>
<field name="res_id"/>
<field name="reference" widget="reference" string="Record"/>
</group>
</group>
</sheet>
</form>
</field>
</record>