0

私のモデルクラスでは、hr.employeeモデルを継承していますが、そのモデルからいくつかのフィールドは必要ありません.それらのフィールドを削除する方法.?

class madulsima_plucker(osv.osv):
    _name = "madulsima.plucker"
    _description = "This table is for keeping personal data of madulsima pluckers"
    _inherit = "hr.employee"
    _columns = {
        'reg_no': fields.char('Registration Number', size=256, required=True),
        'worker_name': fields.char('Worker Name', size=256, required=True)
    }

madulsima_plucker()

また、開発者の本に従ってこれらのフィールドを削除するためにview.xmlを試してみました.itは機能していません.私の問題はどこですか.?

<?xml version="1.0"?>
<openerp>
    <data>
        <!-- 1st part of the sim_view start -->
        <record model="ir.ui.view" id="madulsima_plucker_form">
            <field name="name">madulsima.plucker.form</field>
            <field name="model">madulsima.plucker</field>
            <field name="inherit_id" ref="hr.view_employee_form" />
            <field name="type">form</field>
            <field name="arch" type="xml">
                <notebook position="inside">
                    <page string="Madulsima Plucker Fields">
                        <field name="reg_no" />
                        <field name="worker_name" />
                        <field name="ssnid" position="replace" />
                        <field name="sinid" position="replace" />
                    </page>
                </notebook>
            </field>
        </record>

        <record model="ir.actions.act_window" id="action_plucker_registration">
            <field name="name">Plucker Registration</field>
            <field name="res_model">madulsima.plucker</field>
            <field name="view_type">form</field>
            <field name="view_mode">form</field>
        </record>


        <menuitem id="menu_madulsima_plucker" name="Madulsima/Checkroll" />

        <menuitem id="menu_madulsima_plucker_registration" name="Plucker Registration"
            parent="menu_madulsima_plucker" action="action_plucker_registration" />
    </data>
</openerp>
4

3 に答える 3

0
<field name="ssnid" position="attributes" >
    <attribute name="invisible">True</attribute>
</field>

あなたのview.xmlで、上記のコードを使用して、非表示にしたいフィールドを非表示にし、次のように変更します<field name="ssnid"

于 2016-10-12T03:57:45.053 に答える
0

目に見えない属性を使用する...それが最善の解決策だと思います。置き換えないでください。他のフィールドがそれに依存している可能性があります

<field name="arch" type="xml">
    <xpath expr="//field[@name='ssnid']" position="attributes">
      <attribute name="invisible">True</attribute>
    </xpath>
</field>
于 2019-12-11T12:38:55.117 に答える