我有一個名爲User的模型,我將屬性參數中的用戶模型存儲爲一個散列。我已經宣佈此專欄作爲我的用戶模型中的商店,而沒有任何訪問者,我正在以@user.params
的身份訪問它,同時將數據保存到數據庫中它工作得很好。但是,我必須按特定標準檢索數據。匹配ActiveRecord ::在數據庫中存儲列
說我有存儲使用參數字段中輸入用戶對象爲{檢查:真正} 及其他由{檢查:真正}
現在我要檢索具有用戶PARAMS:{檢查:真正}
我使用的查詢是:
User.where(params: {"checked" => true});
這被投擲的錯誤爲:
INTERNAL ERROR!!! SQLite3::SQLException: no such column: params.checked: SELECT "users".* FROM "users" WHERE "params"."checked" = 't'
我搜索了一大堆關於比較數據庫中的兩個商店領域,但還沒有找到相關的東西。
在此先感謝
你能提供一些這個「params」字段的更多細節 - 它是一個序列化字段嗎?實際存儲在數據庫中的這個字段的對象是否在你的例子中? –
@sharvy我可以訪問它沒有任何問題 –
@max是的,它是一個序列化的字段我已經使用了活躍的記錄存儲,請看看:[鏈接](http://api.rubyonrails.org/classes/ActiveRecord /Store.html) –