1

データベース内の任意の画像に対して、fields.function で取得した画像を印刷したいと考えています。

私は次のことを試みています:

def _get_image(self, cr, uid, ids, name, args, context=None):
    res = dict.fromkeys(ids)
    for record_browse in self.browse(cr, uid, ids):
        partner = self.pool.get('res.partner').browse(cr,uid,6,context=None).image
        res[record_browse.id] = base64.encodestring(partner)
    return res   

_columns = {
        'image': fields.function(_get_image, string="Image", type="binary"),
}

しかし、qwebレポートで私は得ました:

  File "/opt/*/openerp/addons/base/ir/ir_qweb.py", line 791, in value_to_html
raise ValueError("Non-image binary fields can not be converted to HTML")
ValueError: Non-image binary fields can not be converted to HTML

画像をフォームに印刷すると、すべてうまくいきます。

事前に感謝します。

4

2 に答える 2

1

このコードを試してください:

def _get_image(self, cr, uid, ids, name, args, context=None):
    res = dict.fromkeys(ids)
    for record_browse in self.browse(cr, uid, ids):
        partner = self.pool.get('res.partner').browse(cr,uid,6,context=None).image
        res[record_browse.id] = base64.encodestring(partner)
    return res   

_columns = {
        'image': fields.binary("Image"),
        'image_x': fields.function(_get_image, string="Image", type="binary"),

}
于 2015-12-02T12:39:13.167 に答える