
Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn
由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解
本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!
开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号
如果您登录系统碰到问题,请在微信公众号留言:
Self.read 读取指定记录的指定字段 的小观念及方式.
-
设一个字段 employee_id 是 many2one('hr.employee',..... (跳过).
运作正常. 也可write 数据.
现在我要取得 employee_id 的值.
emp_id = self.read(cr,uid, ids,['employee_id','date_to'])
emp_id1 = emp_id[0]['employee_id'] or 1
我用 excespt 方式看看取出的值对不对
raise osv.except_osv(('Warning!'),('Notice : emp id : ' + str(emp_id1) + ' \n' + str(ids) ) )
应该回传是 1 才对啊...会什么会出现. (1,u'Administrator') 这整串字啊..
因为数据库是 1. -
重庆-mrshelly(49812643) 14:22:11
read 出来的就是 (id, name) 的组合.
杭州-猴哥(605620619) 14:25:50
emp_id[0]['employee_id'][0] 吧
上海-就这样(1683223795) 15:19:23
多方试的结果.似乎和字段的 fields 方式有关.
若字段是 many2one 的话 则又会回传 hr.employee 的 (id, name) 的list组合. 则再加index 取值. 如 杭州-猴哥的方式.
若字段是 text, datetime, selection 的fields 设置则直接用 emp_id[0]['XXX']
就可.
感谢 重庆-mrshelly, 杭州-猴哥 提示.解说.
重庆-mrshelly(49812643) 15:21:39
要是发到BBS里就靠谱了...
many2one 在 read 的时候就表现为 (id, name) 的 tuple
many2one 在 write 的时候, 直接使用id 就OK了.