修改Many2One字段的链接打开方式
- 
OE 6中, Many2One字段的只读显示方式如下: 
 [attachimg=1]
 点击时, 是在本窗口打开这个对象的. 有时候非常的恼人. 很多用户不知道浏览器的前进后退, 所以还要从头找回去.
 想想, 不如改为浮动窗口的好点.
 打开浏览器的开发工具:
 [attachimg=2]
 链接都是"oe_form_uri" class. 在web模块的xml模版里, 发现这个class是 FieldURI.readonly 在使用.
 转而在web模块所带的一大堆js文件里搜索 "FieldURI". 发现一大堆的界面对象在使用这个模版.
 忽然想到, 应该有一个派生类, 名字类似于 many2one, 结果找到 view_page.js, line 171里.
 应该是打开一个新的浮动窗口, target不能是current.
 修改之
 line 171:<br />            var real_set_value = function(rval) {<br />                self.value = rval;<br />                self.$element.find('a')<br />                    .unbind('click')<br />                    .text(rval ? rval[1] : '')<br />                    .click(function () {<br />                        self.do_action({<br />                            type: 'ir.actions.act_window',<br />                            res_model: self.field.relation,<br />                            res_id: self.value[0],<br />                            context: self.build_context(),<br />                            views: [[false, 'page'], [false, 'form']],<br />                            target: 'new'<br />                        });<br />                        return false;<br />                    });<br />
 
 打完收工.
 还没有验证是否影响到其他功能.
 微博 @杨振宇_ 欢迎交流.
