【问题标题】:Spree Commerce Vendors Listing Page [NoMethodError : undefined method `each' for #<Class:...>]Spree Commerce 供应商列表页面 [NoMethodError : undefined method `each' for #<Class:...>]
【发布时间】:2019-11-06 21:46:05
【问题描述】:

我正在创建一个视图,列出所有使用Spree Multi Vendor 扩展名的供应商Spree Commerce

我的index.html.erb 模板:

<% @vendors.each do |vendor| %>
    <h2>
      <%= vendor.name %>
    </h2>
<% end %>

我的stores_controller.rb 控制器:

module Spree
    class StoresController < Spree::StoreController  
      def index
        @vendors = Spree::Vendor
      end
    end
end

我得到的错误:

Spree::Stores#index 中的 NoMethodError

显示 /myapp/app/views/spree/stores/index.html.erb where line #36 提出:

#<0x00007fe3f5570a40>

    标签: ruby-on-rails oop model-view-controller spree spree-upgrade


    【解决方案1】:

    Spree::Vendor 只是一个模型类。您可以像任何其他模型一样思考它 - UserProduct 等。

    在这种情况下,您应该调用Spree::Vendor.allSpree::Vendor.active 来获取记录。

    【讨论】:

    猜你喜欢
    • 2015-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-01
    • 2015-03-19
    相关资源
    最近更新 更多