[英]Find filtered record with Ember.js and Rails
我正在嘗試在我的Rails后端中添加一個“ where”過濾器:
def index
@label = Label
if params[:filter].present?
@label = @label.where(uid: params[:filter])
end
@label = @label.all
render json: @label
end
問題是我收到以下SQL請求:
Label Load (1.0ms) SELECT "labels".* FROM "labels" WHERE "uid"."uid" = 'VALUE'
和“ uid”。“ uid”引發錯誤
ActiveRecord::StatementInvalid (SQLite3::SQLException: no such column: uid.uid: SELECT "labels".* FROM "labels" WHERE "uid"."uid" = 'VALUE'):
app / controllers / labels_controller.rb:13:在`index'中
編輯
這是我的標簽架構:
create_table "labels", force: :cascade do |t|
t.string "name"
t.string "uid", null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
您知道為什么它不使用“ labels”。“ uid”嗎?
無法解釋為什么它不起作用,但是這里是我的解決方案:
def index
@label = Label
if params[:filter].present?
@label = @label.where("uid = ?", params[:filter][:uid])
end
@label = @label.all
render json: @label
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.