Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
5 Odpowiedzi
16497 Widoki

I have a problem in changing the names for odoo addon modules. I've tried with xpath, attributes, but I just can't get it to work.

<xpath expr="//field[@name='manager_id']" position="attributes">
    <attribute name="string">New Field Label</attribute>
</xpath>

<field name="manager_id" position="attributes">
    <attribute name="string">New Field Label</attribute>
</field>

There must be a  way to change the field labels? And is there a way to change it so that it changes in every view the field is used?

EDIT:

code that I tried:

<record model="ir.ui.view" id="view_hr_res_company_form">
	<field name="inherit_id" ref="base.view_company_form" />
	<field name="model">res.company</field>
	<field name="arch" type="xml">
		<xpath expr="//form/sheet/notebook/page/field[@name='company_registry']" position="attributes">
			<attribute name="string">Matična številka</attribute>
		</xpath>
		<xpath expr="//field[@name='vat']" position="after">
			<field name="account_no"/>
			<field name="obcina"/>
			<field name="dejavnost"/>
		</xpath>
	</field>
</record>


  

Awatar
Odrzuć

Hi Samo,

Your approach is correct, you need to check with priorities and also check with inherit_id.

Autor

can you dumb it down so I could understand :) I edited the question with the code I tried.

Najlepsza odpowiedź

Hi Samo,

You're trying update slovenian string as en_US in view, this is not correct approach better need to do this change into translation file directly.

add in your po file the related field like example:

#. module: <your_module>

#: field: <your_moddel>,field:0

#: field: <your_related_moddel>,field:0

msgid "English"

msgstr "Translation"

Awatar
Odrzuć
Autor

Can't change directly into the translation file. Needs to be in the custom module so it's independent from odoo install and it's files. Plus I don't have time to figure out another odoo functionality.

You could also change it from odoo ir translation if you're struggling to add it from files

Autor

Sushma you are correct, but NOT helpful because I don't have time for the correct way, I just need a quick work around. I'll do the correct way, when I start building the next custom module from ground up.

Autor

you where right in the first comment on my question. The xpath was to complicated. With only //field[@name="<name_of_field>"] it works.

Najlepsza odpowiedź

You can inherit the model in python 

_inherit='model.name'

and override the field definition to set the string to whatever label you desire

manager_id = fields.Many2one(string='Your preferred label')
Awatar
Odrzuć
Autor

It doesn't work, probably because it's translated. Any way to change the translation?

Powiązane posty Odpowiedzi Widoki Czynność
2
wrz 18
5874
1
kwi 18
3346
0
sty 18
4000
0
wrz 17
3180
1
mar 19
4344