Se rendre au contenu
Menu
Cette question a été signalée
4 Réponses
21472 Vues

I just can't find a working external id for the model hr_employee. When I look at the meta data in debug it says "XML ID: /". In the database ir.model.data I have:

id: 4633

module: hr

model: hr.employee

I've tried the id 4633, hr.hr_employee, hr_employee, hr.hr.employee, hr.employee, ... nothing works.

All the time I get the error: "External ID not found in the system"

My rule looks like

<data noupdate="1">
	<record id="hr_izracun_place.current_company_employee_access_rule" model="ir.rule">
		<field name="name">Show employees by company</field>
		<field name="model_id" ref="hr.hr_employee"/>
		<field name="domain_force">
			[('address_id', 'in' [user.company_id.id])]
		</field>
	</record>
</data>

I really don't know how to get this working and why it's not working? 

 


Avatar
Ignorer

why don't you just check in Odoo how they defined it. here is an example

<field name="model_id" ref="model_account_move"/> for model account.move

if using outside the module in which the model is defined, then you will have to define like module_name.model_model_name

Auteur Meilleure réponse

2 hours of googling and nothing, but after posting the question I find the answer in next try. One can see the external identifier in debug mode under Settings -> Technical -> ... -> External Identifiers

Avatar
Ignorer
Meilleure réponse

As far as I can tell, the model ID is auto-generated based on module and model.

For example: the model my.object in the module my_module

When searching for it:

self.env['my.object']

When referencing it in XML:

<field name="model_id" ref="my_module.model_my_object">

Notice that the . (dot) character is replaced by _ (underscore) in the model reference.

Avatar
Ignorer
Publications associées Réponses Vues Activité
1
août 20
6025
4
déc. 19
4161
2
juin 21
6628
2
juil. 25
4516
2
déc. 24
7687