首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >暂态模型Odoo 10的节省值

暂态模型Odoo 10的节省值
EN

Stack Overflow用户
提问于 2017-10-15 07:24:20
回答 2查看 3K关注 0票数 1

我在account.config.settings模型中添加了一个新字段。它在“设置”页中显示新字段,并可以输入值。但是当我重新打开页面时,这个值就不存在了。我知道Transient model不会保存很长时间的值。

但其余的价值仍然存在,我如何才能做到这一点?下面是我的密码。

*.py

代码语言:javascript
复制
class AccountSettings(models.TransientModel):
_inherit='account.config.settings'

    @api.one
    def _get_header(self):

        header = fields.Char('Header')

*.xml

代码语言:javascript
复制
<record id="view_account_config_settings_inherit" model="ir.ui.view">
  <field name="name">view.account.config.settings.inherit.form</field>
  <field name="model">account.config.settings</field>
  <field name="inherit_id" ref="account.view_account_config_settings"/>
  <field name="arch" type="xml">
  <xpath expr="//group[@name='accounting']" position="after">
    <group string="Reports" name="reports">
         <field name="header" class="oe_inline"/>
    </group>
  </xpath>
  </field>
</record>
EN

回答 2

Stack Overflow用户

发布于 2017-10-15 11:16:12

account.config.settings模型中,可以使用以下方法保存您的值:

代码语言:javascript
复制
class AccountSettings(models.TransientModel):
    _inherit='account.config.settings'

    header = fields.Char('Header')

    @api.multi
    def set_header_defaults(self):
        return self.env['ir.values'].sudo().set_default(
            'account.config.settings', 'header', self.header)
票数 2
EN

Stack Overflow用户

发布于 2019-05-24 15:47:06

试试下面的代码:

代码语言:javascript
复制
class AccountSettings(models.TransientModel):
_inherit='account.config.settings'

    @api.one
    def _get_header(self):

        header = fields.Char('Header',config_parameter='header.configuration')

您可以任意命名属性config_parameter。并且它将用于从其他模型中获取报头的值。

示例:

代码语言:javascript
复制
test = self.env['ir.config_parameter'].get_param('**header.configuration**', '').strip()

测试将返回account.config.settings中的临时存储值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46752694

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档