0
我設置了一個項目,我想將一些rails代碼移動到我的mysql數據庫。我想把我在控制器中使用的條件放在數據庫中。我稱這個表格爲Filter。屬性是名稱和過濾器,在這種情況下,我將條件放在一個簡單的條件中:'status = ?' ,'P'
。Ruby代碼作爲來自dbase的屬性
現在從我的控制器我要撥打的條件是這樣的:
@programs = Program.where(Filter.find_by_name(params[:filter]).filter)
因此,基於中日URL篩選參數我所說的條件。我無法讓它工作,我認爲問題是條件返回爲字符串。所以基本上我結束了:
@programs = Program.where("'status = ?' ,'P'") # including the string quotes
返回一個錯誤:
ActiveRecord::StatementInvalid: Mysql2::Error: Operand should contain 1 column(s): SELECT `programs`.* FROM `programs` WHERE ('status = ?' ,'P')
這並不工作:
@programs = Program.where('status = ?' ,'P')
所以我的條件,控制器和模型都很好。任何人都知道如何解決這個問題?