Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn

由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解

本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!

开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

如果您登录系统碰到问题,请在微信公众号留言:

OE 如何调用类



  • 不同文件夹下面的类调用
    from openerp.addons.bn.clsbasepage import bn_cls_basepage

    def get_test(self,cr,uid,ids,context=None):
          clsbasepage = bn_cls_basepage()
          companyid=clsbasepage.get_companyid(self,cr,uid,ids)
    clsbasepage 获取失败

    class bn_cls_basepage(osv.osv):
        _name="bn.cls.basepage"
        _description = "BasePage Class"
    def get_companyid(self,cr,uid,ids):
            obj_company = self.pool.get('res.users').read(cr,uid,ids=uid,fields=['company_id'],context=None) 
            return obj_company['company_id'][0]
    不知道是这样写吗



  • <br /><br />...<br />from openerp.addons.bn import clsbasepage&nbsp; &nbsp; # 试试看.<br />...<br />
    


  • from openerp.addons.bn import bnclsbasepage
    方法中clsbasepage = bnclsbasepage()       
            companyid=clsbasepage.get_companyid(self,cr,uid,ids)
    这样调用还是不能获得,求教!
    如果直接companyid=clsbasepage.get_companyid(self,cr,uid,ids)
    报错TypeError: 'module' object is not callable
    断点放到clsbasepage能看到类信息。
    如果不是类的话里面是纯方法是可以调用的



  • 不要 clsbasepage = bnclsbasepage() 

    直接
    companyid=bnclsbasepage.get_companyid(self,cr,uid,ids)

    搞不清楚你的代码结构....

    你最好打包出来.


Log in to reply