基本参数
字段定义的基本参数 : change_default,readonly,required,states,string,translate,size,priority,domain,invisible,context,selection。
change_default:别的字段的缺省值是否可依赖于本字段,缺省值为:False。例子(参见res.partner.address), ‘zip’: fields.char(‘Zip’, change_default=True, size=24),这个例子中,可以根据zip的值设定其它字段的缺省值,例如,可以通过程序代码,如果zip为200000则city设为“上海”,如果zip为100000则city为“北京”。readonly: 本字段是否只读,缺省值:False。
required: 本字段是否必须的,缺省值:False
states: 定义特定state才生效的属性,格式为:{‘name_of_the_state’: list_of_attributes},其中list_of_attributes是形如[(‘name_of_attribute’, value), …]的tuples列表。例子(参见account.transfer): ‘partner_id’: fields.many2one(‘res.partner’, ‘Partner’, states={‘posted’:[(‘readonly’,True)]}),string: 字段显示名,任意字符串。
translate: 本字段值(不是字段的显示名)是否可翻译,缺省值:False。
size: 字段长度。
domain: 域条件,缺省值:[]。在many2many和many2one类型中,字段值是关联表的id,域条件用于过滤关联表的record。例子:’default_credit_account_id’: fields.many2one(‘account.account’, ‘Default Credit Account’, domain=”[(‘type’,’!=’,’view’)]”),本例表示,本字段关联到对象(‘account.account’)中的,type不是’view’的record。
invisible: 本字段是否可见,即是否在界面上显示本字段,缺省值True。
selection: 只用于reference字段类型,参见前文reference的说明。