正在获取所有供应商的清单?

问题描述 投票:-1回答:1

我正在执行以下操作,将供应商从产品中剔除,并使用unique将其带到前端以列出商店中的每个供应商。

Controller:

@count = ShopifyAPI::Product.count
@n = 1
@products = ShopifyAPI::Product.find(:all, limit: 250, page: @n)
if (@count > 50) && params[:page_number]
  @page_number = params[:page_number].to_i
  @products = ShopifyAPI::Product.find(:all, params: {page: @page_number})
end

前端:

<% @products.map(&:vendor).uniq.each do |vendor| %>
...
...
<% end %>

<% if (@count > 50) && (@page_number.present? && @page_number > 1) %>
  <%= link_to "<", company_shop_vendors_path(shop_id: @shop.id, page_number: (@page_number - 1)) %> <%= link_to "1", company_shop_vendors_path(shop_id: @shop.id, page_number: 1) %> <%= link_to "#{@page_number + 1} >", company_shop_vendors_path(shop_id: @shop.id, page_number: (@page_number + 1)) %>
<% elsif (@count > 50) %>
  <%= link_to "#{@n+1} >", company_shop_vendors_path(shop_id: @shop.id, page_number: (@n += 1)) %>
<% end %>

这使我得到了卖方,但没有我想要的。

整个页面系统是很糟糕的尝试,实际上我也使用搜索表单,这更好。在产品页面上分页只会让我在每个页面上都有唯一的供应商,而当有数百个页面时,这毫无意义。

最佳方法是什么?

也许有一种方法可以将所有供应商分页并扔到内存中,然后将它们唯一地显示在前端?

因此,唯一的选择是根据Product API请求将供应商存储在数据库中,然后Product创建webhook ---而不是直接使用API​​。

你怎么看?

ruby-on-rails ruby shopify shopify-app
1个回答
0
投票

[您知道Shopify具有Liquid构造,在那里他们可以向您显示商店的所有供应商?

https://help.shopify.com/en/themes/liquid/objects/shop#shop-vendors

因此您可以使用应用代理轻松地将其用于将该应用发送给该应用。比迭代产品和其他轨迹更为有效。

© www.soinside.com 2019 - 2024. All rights reserved.