Joe*_*nas 1 ruby activerecord ruby-on-rails
我有一组我需要加入的表格:
tables = ["users","cars"]
Run Code Online (Sandbox Code Playgroud)
但是,我正在尝试加入这些:
joins(:users,:cars)
Run Code Online (Sandbox Code Playgroud)
代码无效.在我的模型中,我有一个定义,我传入表中:
def conditions(tables)
joins(tables.map { |t| t.to_sym }.join(","))
end
Run Code Online (Sandbox Code Playgroud)
这种方法对于splat运算符来说是一个很好的选择.
.joins接受一个未定义数量的参数,所以你需要的是一种将数组解构为参数的方法..join(",")将它变成一个字符串,这不是它所期望的.但是,这个:joins(*tables.map(&:to_sym))应该做的伎俩.
| 归档时间: |
|
| 查看次数: |
558 次 |
| 最近记录: |