Rails 如何在视图中使用带参数的模型

Rails How to use model with params in view

我想让推荐的产品出现在展示页面上我的模型中有这个(我正在使用 pg)

//Product model
def self.similar(product_name)
        where("name LIKE ?", "%#{product_name}%").limit(4)
      end 

我如何在我的视图中使用它(如何传递参数)

所以我不确定你从哪里得到 'product_name' 但听起来你只需要控制器 'Show' 方法中的一个变量。

最简单的方法是将如下内容添加到您的控制器 'Show' 方法中;

def show
    @similar_products = Product.where("name LIKE ?", params[:product_name]).limit(4)
end

然后在您的展示页面中将其添加到 html.erb;

<div class='container'>
    <% @similar_products.each do |product| %>
        <%= product.name %>
        <%= product.price %>
    <% end %>
</div>