跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

  1. 主页
  2. 版块
  3. Odoo 开发与实施交流
  4. 关于fields.function显示网络图片的问题

关于fields.function显示网络图片的问题

已定时 已固定 已锁定 已移动 Odoo 开发与实施交流
4 帖子 2 发布者 4.4k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • S 离线
    S 离线
    sage
    写于 最后由 编辑
    #1

    我的目标是希望通过fields.function来获取外部网站图片显示到OE上,在开发过程中有以下问题:

    1. 我已经使用urllib2获取到了网络的图片opener.open('http://www.sajolab.com/sajolab.jpg'),然后使用read()将图片转换为Binary类型,但是在添加Module时却报 in ustr raise UnicodeError('unable de to convert %r' % (orig,))错误,相信应该是转码问题,请问各位大神,我在使用fields.function转码应该如何处理才可以正确显示??

    附上Python代码:
    from osv import osv, fields
    import urllib2
    import netsvc
    class product_product(osv.osv):
        _name = 'product.product'
        _inherit = 'product.product'
        _description = 'Product'

        def _get_image(self, cursor, user, ids, name, arg, context=None):
            image = {}
            logger = netsvc.Logger()
            opener = urllib2.build_opener()
            for id in ids:
                logger.notifyChannel('addon:' + self._name, netsvc.LOG_INFO, 'id:%s' % (id))
                image[id] = opener.open('http://www.sajolab.com/sajolab.jpg').read()
            logger.notifyChannel('addon:' + self._name, netsvc.LOG_INFO, 'image:%s' % (image))
            return image

        _columns = { 'image' : fields.function(_get_image, method=True, string='Product Image', type='binary', store=True), }

    product_product()

    1 条回复 最后回复
    0
    • S 离线
      S 离线
      sage
      写于 最后由 编辑
      #2

      问题已解决
      使用basse64转换编码. ;D ;D
      image[id] = base64.encodestring(opener.open('http://www.sajolab.com/sajolab.jpg').read())

      1 条回复 最后回复
      0
      • mrshellyM 离线
        mrshellyM 离线
        mrshelly
        写于 最后由 编辑
        #3

        恭喜... 给贴子加个 标签吧.. 或者后面需要了解的人会检索到.

        1 条回复 最后回复
        0

        • 登录

        • 没有帐号? 注册

        • 登录或注册以进行搜索。
        • 第一个帖子
          最后一个帖子
        0
        • 版块
        • 标签
        • 热门
        • 用户
        • 群组