首页 > 解决方案 > 相关产品只带来一个

问题描述

我在产品中添加了相关产品,但是只有第一个产品来了,我添加了其他产品不来。

我在控制器中尝试了许多查询样式,但这是获得结果的唯一方法

产品.rb

has_many :releateds, dependent: :destroy

相关.rb

belongs_to :product

产品控制器

@product = Product.friendly.find(params[:id])
@releateds = Releated.select(:related_id).find_by(product_id: @product)
@productrel = Product.where(id:@releateds.related_id)

标签: ruby-on-railsruby-on-rails-5

解决方案


从看到这个

Releated.select(:related_id)

我怀疑你的关系有问题,下面的代码可以为你工作

@product.releateds

如果两个模型不同并且没有继承其他模型,并且仍然无法使用上述代码,您应该以下列方式更改您的关系

has_many :releateds, dependent: :destroy, foreign_key: :related_id

如果仍然不起作用,请提供您的架构。


推荐阅读