如何在openerp中显示PostgreSQL数据库中的选择字段值(组合框)

时间:2014-01-16 11:34:13

标签: odoo

使用以下代码我可以插入/ edi trecord而不会出现任何问题。我的表单视图显示除“rate”之外的所有字段,即“选择”字段。树视图还显示速率字段为undefined。我的数据库保存了rate字段的正确值。我可以知道这个的根本原因以及如何克服这个问题。

.py文件在这里给出

from osv import osv
from osv import fields

class test_base(osv.osv):
     _name='test.base'
     _columns={
           'name':fields.char('Name'),
           'email':fields.char('Email'),

           'code':fields.integer('Unique ID'),
            sal':fields.float('Salary'),
           'rate':fields.selection(((10,'10'), (20,'20'),(30,'30')),
           'Percentage of Deduction'),
           'ded':fields.float('Deduction'),
           'bdisplay':fields.float('Button Display'),

           }

    def on_change_ded_cal(self, cr, uid, ids,rate,context=None):
        x=rate*2
        return {'value':{'ded':x }}


test_base() 

我的XML是            

   <record model="ir.ui.view" id="test_base_form">
       <field name="name">test.base.form</field>
           <field name="model">test.base</field>
           <field name="type">form</field>
           <field name="arch" type="xml">
               <form string="Test Base">                       
                   <field name="name"/>
                   <field name="email"/>
                   <field name="code"/>
                   <field name="sal"/>
                   <field name="rate" on_change="on_change_ded_cal(rate,sal,ded)"/>
                   <field name="ded"/>                       
                   <field name="bdisplay"/> 
                  <button name="my_button_display" string="Calculate" type="object"/>
                     <newline />
                     <newline />
                     <newline />
                    <field name="skillid"  colspan="4"  nolabel="1"/>                          
                  </form>
          </field>
    </record>
    <record model="ir.ui.view" id="test_base_tree">
        <field name="name">test.base.tree</field>
        <field name="model">test.base</field>
        <field name="type">tree</field>
        <field name="arch" type="xml">
            <tree string="Test Base">               
               <field name="name"/>
                <field name="email"/>
                <field name="code"/>
                <field name="sal"/>          
                <field name="ded"/> 
                <field name="rate"/>    
            </tree>
        </field>
    </record>

1 个答案:

答案 0 :(得分:2)

enter image description here对于您的选择字段,您必须这样写:

您在选择字段中遗漏了字符串

率 ':fields.selection([(10,'10'),                         (20,'20' ),                         (30,'30 ')],' 费率“),

希望这个帮助