在openerp中对齐字段

时间:2014-01-17 11:42:02

标签: python field openerp

如何在openerp中对齐用户模块中的字段。字段在我的表单中没有正确对齐。遵循我的代码:

的xml:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
    <!-- ===================== This is tree layout =============================-->
    <record id="lis_tree" model="ir.ui.view">
            <field name="name">Lab</field>
            <field name="model">lis.lab</field>
            <field name="arch1" type="xml">
                <tree string="name">
                    <field name = "name"/>
                    <field name = "customer_name" />
                    <field name = "excutive_name" />
                    <field name = "date_birth"/>
                    <field name = "date_delivery" />
                    <field name = "hospital_name"/>
                    <field name = "hospital_city"/>
                    <field name = "hospital_state"/>
                    <field name = "hospital_country"/>
                    <field name = "hospital_phone"/>
                </tree>
            </field>
        </record>
<!-- ========================This is Form layout===============================-->
    <record id="lis_form" model="ir.ui.view">
            <field name="name">Lab</field>
            <field name="model">lis.lab</field>
            <field name="arch1" type="xml">
                <form string="lab" version="7.0">
                    <label for="name" class="oe_edit_only"/>
                    <h1><field name="name"/></h1>
                    <group>
                        <field name = "customer_name" /> <!--on_change="on_change_customer(customer_name)"/>-->
                        <field name = "excutive_name" />
                        <field name = "date_birth"/>
                        <field name = "date_delivery" />
                        <field name = "hospital_name"/>
                        <field name = "hospital_city"/>
                        <field name = "hospital_state"/>
                        <field name = "hospital_country"/>
                        <field name = "hospital_phone"/>
                    </group>
                </form>
           </field>
        </record>
    <!-- ========================= Action Layout ============================= -->
        <record id="action_lab" model="ir.actions.act_window">
            <field name="name">Lab</field>
            <field name="type">ir.actions.act_window</field>
            <field name="res_model">lis.lab</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form</field>
            <field name="view_id" ref="lis_form"/>
        </record>
    <!-- ===========================Menu Settings=========================== -->
        <menuitem name = "LIS" id = "menu_lis_lab" action = "action_lab"/>
</data>
</openerp>

蟒:

来自osv import osv 来自osv import fields

class cus(osv.osv):
 _name = "lis.lab"
 _description = "This table is for keeping lab data of cord blood"
 _columns = {
 'name': fields.char('Lab Id',size=64,required=True),
 'date_birth': fields.char('Customer', size=64),
 'excutive_name': fields.char('Excutive Name', size=64),
 'date_birth': fields.date('Date of Birth'),
 'date_delivery': fields.date('Delivery Date'),
 'hospital_name': fields.char('Hospital', size=64),
 'hospital_city': fields.char('City', size=64),
 'hospital_state': fields.char('State', size=64),
 'hospital_phone': fields.char('Phone', size=64)
}

以上代码工作正常。但这些字段随机查看,如下面的

城市
客户名称 实验室编号
执行

我如何才能拥有与xml相同的订单?

2 个答案:

答案 0 :(得分:1)

.py 文件中尝试此操作

class cus(osv.osv):
_name = "lis.lab"
_description = "This table is for keeping lab data of cord blood"
_columns = {
    'name': fields.char('Lab Id',size=64,required=True),
    'excutive_name': fields.char('Excutive Name', size=64),
    'date_birth': fields.date('Date of Birth'),
    'date_delivery': fields.date('Delivery Date'),
    'hospital_name': fields.char('Hospital', size=64),
    'hospital_city': fields.char('City', size=64),
    'hospital_state': fields.char('State', size=64),
    'hospital_phone': fields.char('Phone', size=64),
    'customer_name': fields.many2one('res.partner', 'Customer Name', domain=[('customer', '=', True)]),
    'hospital_country': fields.char('Hospital Country'),
}
视图文件的

.xml

<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<!-- ===================== This is tree layout =============================-->
<record id="lis_tree" model="ir.ui.view">
        <field name="name">Lab</field>
        <field name="model">lis.lab</field>
        <field name="arch1" type="xml">
            <tree string="name">
                <field name = "name"/>
                <field name = "customer_name" />
                <field name = "excutive_name" />
                <field name = "date_birth"/>
                <field name = "date_delivery" />
                <field name = "hospital_name"/>
                <field name = "hospital_city"/>
                <field name = "hospital_state"/>
                <field name = "hospital_country"/>
                <field name = "hospital_phone"/>
            </tree>
        </field>
    </record>

<!-- ========================This is Form layout===============================-->
<record id="lis_form" model="ir.ui.view">
        <field name="name">Lab</field>
        <field name="model">lis.lab</field>
        <field name="arch" type="xml">
            <form string="lab" version="7.0">
                <sheet>
                    <group cols='4'>
                        <group>
                            <field name="name"/>
                            <field name = "customer_name" /> <!--on_change="on_change_customer(customer_name)"/>-->
                            <field name = "excutive_name" />
                            <field name = "date_birth"/>
                            <field name = "date_delivery" />
                        </group>
                        <group>
                            <field name = "hospital_name"/>
                            <field name = "hospital_city"/>
                            <field name = "hospital_state"/>
                            <field name = "hospital_country"/>
                            <field name = "hospital_phone"/>
                        </group>
                    </group>
                </sheet>
            </form>
       </field>
    </record>

<!-- ========================= Action Layout ============================= -->
    <record id="action_lab" model="ir.actions.act_window">
        <field name="name">Lab</field>
        <field name="type">ir.actions.act_window</field>
        <field name="res_model">lis.lab</field>
        <field name="view_type">form</field>
        <field name="view_mode">tree,form</field>
        <field name="view_id" ref="lis_form"/>
    </record>
<!-- ===========================Menu Settings=========================== -->
    <menuitem name = "LIS" id = "menu_lis_lab" action = "action_lab"/>
</data>
</openerp>

希望现在看起来比你的观点更好看。

答案 1 :(得分:0)

请检查您是否在密钥'data'或'update_xml'下的__openerp__.py文件中指定了xml文件路径。 例如,如果你的xml在你的模块的向导文件夹中,那么在__openerp__.py文件中,

{
    'name': 'Module name',
    'version': '1.0',
    'category': 'its category',
    'description': """


If you install this module, then blah blah blah.
    """,
    'author': 'author name',
    'depends': ['base'],#dependent module list
    'data': ['wizard/your_xml_file.xml'],#list of xml files used in this module
    'demo': [],#list of demo xml files used in this module
    'test': [],#list of test xml files used in this module
    'installable': True,
    'auto_install': False,
}