2017-02-15 12 views
0

Я пытаюсь использовать API-интерфейс Shopify для получения URL-адреса изображения, я получил image_id и пытаюсь сделать Image.find, но получаю ошибку, пожалуйста, помогите!Доступ к варианту изображения по идентификатору. Python

image = shopify.Image.find(variant.image_id) 
image_url = image.scr 
+0

Как вы получение изображения ID? – Julien

+0

для варианта в product.variants: variant.image_id – CooleRnax

ответ

0

изображение = shopify.Image.find (variant.image_id, product_id = product.id)

1

Если у вас уже есть Product ресурс, то у вас есть все необходимые данные, не делая дополнительных API позвоните в Shopify. Просто возьмите image_id из выбранного варианта и проведите по ним по окнам product.images, чтобы посмотреть, какой из них соответствует.

Пример:

image_id = product.variants[0].image_id # Or however you pick the variant 

image_src = None 
for image in product.images: 
    if image.id == image_id: 
     image_src = image.src 
     break 

Или, чтобы обернуть его в функцию:

def image_src_by_id(product, image_id): 
    image_src = None 
    for image in product.images: 
     if image.id == image_id: 
      image_src = image.src 
      break 
    return image_src 
+0

image = shopify.Image.find (variant.image_id, product_id = product.id) только одна строка – CooleRnax

+0

Как отмечалось, использование 'find()' makies другого ненужного вызова API для Shopify, и, следовательно, будет намного медленнее (особенно если вы делаете это в цикле). – Julien

Смежные вопросы