2014-02-12 110 views
0

Iam開發了一個rails應用程序,其中我有兩個表「城市」和「州」。從搜索框中,我發送一個短語,從城市或州來獲取。
搜索框中的文本可以像'伊利諾伊'或'芝加哥'一樣,但是查詢應該以這樣一種方式查看兩個城市和州的表,以檢查給定的參數是否在表中找到或者不。
在rails中應該是什麼查詢?
我是相當新的rails,所以,還不太擅長查詢。Rails查詢多個表的關聯

回答

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])