【问题标题】:Accessing variant image via id. Python通过 id 访问变体图像。 Python
【发布时间】:2017-02-15 03:56:22
【问题描述】:

我正在尝试使用 Shopify 的 python API 来获取变体图像 url,我已收到 image_id 并尝试执行 Image.find 但我收到错误,请帮助!

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

【问题讨论】:

  • 你是如何获取图片ID的?
  • product.variants 中的变体:variant.image_id

标签: python image shopify


【解决方案1】:

如果您已经拥有 Product 资源,那么您无需对 Shopify 进行额外的 API 调用即可获得所需的所有数据。只需从您想要的变体中取出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

【讨论】:

  • image = shopify.Image.find(variant.image_id, product_id=product.id) 一行
  • 如前所述,使用 find() 会对 Shopify 产生另一个不必要的 API 调用,因此会慢得多(尤其是在循环中执行此操作时)。
【解决方案2】:

image = shopify.Image.find(variant.image_id, product_id=product.id)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-19
    • 2021-12-11
    • 2012-09-21
    • 2012-12-24
    • 1970-01-01
    • 1970-01-01
    • 2011-10-21
    • 2018-01-13
    相关资源
    最近更新 更多