odoo - 如何更改odoo中many2one字段的默认形式

标签 odoo odoo-8 odoo-9

嗨,我有一个继承product.product的模式单元。 我已经为 Unit 定义了自定义 View ,并且它们可以从菜单中正常工作。

继承account.asset.assets的属性有多个单元。 如何从“属性” View 调用我的自定义单位 View ? 当我单击“添加项目”时,我会得到标准产品表单。

<record id="unit_form" model="ir.ui.view">
        <field name="name">All Units</field>
        <field name="model">product.product</field>
        <field name="sequence">0</field>
        <field name="arch" type="xml">
        <form string="Unit">

                    <group>
                        <field name="property_id" widget="many2one" attrs="{'required': [('is_unit', '=', True)]}" />
                        <field name="is_unit"  invisible="1" />
                        <field name="features_amenities_ids" placeholder="Features and Amenities" widget="many2many_tags" />
                        <field name="appliences_ids" placeholder="Apliences" widget="many2many_tags" />
                        <field name="lst_price" string="Rent" />
                    </group>

            </form>
        </field>
</record>
<record id="unit_tree" model="ir.ui.view">
        <field name="name">All Units</field>
        <field name="model">product.product</field>
        <field name="arch" type="xml">
            <tree string="Units" default_order='property_id,name'>

                <field name="property_id" />
                <field name="name" string="Unit#" />

            </tree>
        </field>
</record>

<record id="action_unit" model="ir.actions.act_window">
        <field name="name">Units</field>
        <field name="res_model">product.product</field>
        <field name="view_mode">search, kanban,tree,form</field>
        <field name="domain">[('is_unit', '=', True)]</field>
        <field name="context">{'default_is_unit':1 }</field>
        <field name="search_view_id" ref="unit_search"/>
        <field name="help" type="html">
            <p class="oe_view_nocontent_create">
            Click to create a Unit.
          </p>
            <p>
            Here you will find the all units.
          </p>
        </field>
</record> 
<record id="action_unit_form" model="ir.actions.act_window.view">
        <field name="act_window_id" ref="action_unit" />
        <field name="view_id" ref="unit_form" />
        <field name="view_mode">form</field>
        <field name="sequence">10</field>
</record> 

<record id="action_unit_tree" model="ir.actions.act_window.view">
        <field name="act_window_id" ref="action_unit" />
        <field name="view_id" ref="unit_tree" />
        <field name="view_mode">tree</field>
        <field name="sequence">9</field>
</record> 

<record id="action_unit_kanban" model="ir.actions.act_window.view">
        <field name="act_window_id" ref="action_unit" />
        <field name="view_id" ref="product.product_kanban_view" />
        <field name="view_mode">kanban</field>
        <field name="sequence">8</field>
</record>



<menuitem action="action_unit" sequence="2" 
        id="menu_units_list" name="Units" parent="menu_property_sub"/>  

这是来自属性(property)

<notebook colspan="4">
    <page string="Units">
    <field name="unit_ids" nolabel="1" widget="one2many" >
        <tree string="Units">
            <field name="name" string="Unit#"/>
       </tree>
    </field>
    </page>
</notebook>

最佳答案

如果您想为many2one或one2many字段指定 View :

<field name="m2o_id" context="{'form_view_ref': 'module_name.form_id'}"/>

希望这有帮助。还有其他关键字,例如用于 TreeView 的tree_view_ref

关于odoo - 如何更改odoo中many2one字段的默认形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41681115/

相关文章:

xml - 如何将 t-if 用于字符串 odoo?

python - 如何使用动态字段odoo-10过滤 TreeView

python - 如何在odoo9中传递上下文?

odoo - 如何在 TreeView 标题中创建一个按钮(在创建和导入按钮旁边)并为其提供功能?在奥多 9

python - 计算字段作为 Odoo 10 中的列表

pycharm - 从 Pycharm 运行 odoo 时出错

python - 如何在 Odoo 中创建分为不同月数的可编辑 ListView ?

odoo - 如何将 Odoo 8 模块转换为 Odoo 9

python - Onchange 已触发,但未使用 View 上的值填充字段(Odoo)

python - 获取错误详细信息,例如 'openerp application error details'