Skip to content

Instantly share code, notes, and snippets.

@3mrdev
Last active December 11, 2022 09:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save 3mrdev/890ccd3b637db743d58ba9e1f1e7a4d5 to your computer and use it in GitHub Desktop.
Save 3mrdev/890ccd3b637db743d58ba9e1f1e7a4d5 to your computer and use it in GitHub Desktop.
Odoo Configuration Example
class ResConfigSettings(models.TransientModel):
_inherit = 'res.config.settings'
your_field = fields.Many2one("module.model",string="Your Field", config_parameter='your_module.your_field')
def set_values(self):
super(ResConfigSettings, self).set_values()
ICPSudo = self.env['ir.config_parameter'].sudo()
ICPSudo.set_param('your_module.your_field', self.your_field.id)
@api.model
def get_values(self):
res = super(ResConfigSettings, self).get_values()
ICPSudo = self.env['ir.config_parameter'].sudo()
your_field = ICPSudo.get_param('your_module.your_field')
res.update(
your_field=your_field.id,
)
return res
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="res_config_settings_view_form_firebits" model="ir.ui.view">
<field name="name">res.config.settings.view.form.inherit.firebits</field>
<field name="model">res.config.settings</field>
<field name="priority" eval="25"/>
<field name="inherit_id" ref="base.res_config_settings_view_form"/>
<field name="arch" type="xml">
<xpath expr="//div[hasclass('settings')]" position="inside">
<div class="app_settings_block" data-string="your_module" string="your_module" data-key="your_module" groups="base.group_erp_manager">
<h2>Title of configuration</h2>
<div class="row mt16 o_settings_container" name="title_setting_container">
<div class="col-12 col-lg-6 o_setting_box">
<div class="o_setting_left_pane">
</div>
<div class="o_setting_right_pane">
<label for="_your_field"/>
<div class="text-muted">
Your filed description
</div>
<field name="_your_field"/>
</div>
</div>
<div class="col-12 col-lg-6 o_setting_box">
<div class="o_setting_left_pane">
</div>
<div class="o_setting_right_pane">
<label for="_your_field"/>
<div class="text-muted">
Your filed description
</div>
<field name="_your_field"/>
</div>
</div>
</div>
</div>
</xpath>
</field>
</record>
<record id="action_your_module_configuration" model="ir.actions.act_window">
<field name="name">Settings</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">res.config.settings</field>
<field name="view_mode">form</field>
<field name="target">inline</field>
<field name="context">{'module' : 'your_module'}</field>
</record>
<menuitem id="menu_your_module_general_settings" name="Settings" parent="config_menu"
sequence="0" action="action_your_module_configuration" groups="base.group_erp_manager"/>
</odoo>
@nageergroup
Copy link

How can use it for multi company

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment