我从网址获取图片并尝试将其上传到Odoo(product.template,image列)。我尝试了很多方法来做到这一点,但他们都没有帮助我。你能否给我正确的方法,在不使用csv import的情况下将产品图片上传到Odoo。
答案 0 :(得分:1)
这对我有用:
import urllib2
import base64
image = urllib2.urlopen('http://ddd.com/somepics.jpg').read()
image_base64 = base64.encodestring(image)
product.image_medium = image_base64 //(new api v9)
#in old api maybe something like
#prod_obj.write(prod_id, {'image_medium': image_base64})
答案 1 :(得分:0)
try:
logo = urllib2.urlopen(logo_url).read()
except:
print 'waitting 60s'
time.sleep(60)
logo = urllib2.urlopen(logo_url).read()
res_data={'image':psycopg2.Binary(logo)}
...
答案 2 :(得分:0)
如果您有图片网址并需要在产品中设置,那么您可以执行以下操作,并在安装/升级自定义模块时调用此方法。
import requests
import base64
@api.multi
def get_image(self):
for product in self:
img = False
if image.url:
response = requests.get(image.url)
if response.ok and response.content :
img = base64.b64encode(response.content)
else :
img = False
product.image = img