コンテンツへスキップ
メニュー
この質問にフラグが付けられました
4 返信
21461 ビュー

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? 

 


アバター
破棄

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

著作者 最善の回答

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

アバター
破棄
最善の回答

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.

アバター
破棄
関連投稿 返信 ビュー 活動
1
8月 20
6011
4
12月 19
4146
2
6月 21
6598
2
7月 25
4491
2
12月 24
7668