【问题标题】:Rails query associations for multiple tablesRails 查询多个表的关联
【发布时间】:2014-02-12 14:53:47
【问题描述】:
我正在开发一个 Rails 应用程序,其中有两个表“城市”和“州”。从搜索框中,我发送一个要从城市或州获取的短语。
搜索框中的文本可以像“伊利诺伊州”或“芝加哥”,但查询应该以这样的方式查看城市和州表,以检查给定的参数是否在表中找到。
在rails中应该查询什么?
我对 Rails 还很陌生,所以还不太擅长查询。
【问题讨论】:
标签:
mysql
ruby-on-rails
activerecord
associations
【解决方案1】:
在这种情况下,您不能比对两个表独立运行查询做得更好:
@cities = City.where(name: params[:search])
@states = State.where(name: params[:search])
假设列是name
或者如果您想允许更灵活的搜索:
@cities = City.where("name LIKE '?%'", params[:search])
@states = State.where("name LIKE '?%'", params[:search])