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

原论坛用户的基本信息和发帖这里都予以保留,请注意:原论坛用户无需重新注册新用户,但是您的密码需要重置

开发人员可以登录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]
    不知道是这样写吗



  • 不同文件夹下面的类调用
    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]
    不知道是这样写吗



  • [code]

    ...
    from openerp.addons.bn import clsbasepage    # 试试看.
    ...
    [/code]



  • 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)

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

    你最好打包出来.


登录后回复
 

与 Odoo 中文社区 的连接断开,我们正在尝试重连,请耐心等待