如何将URL中的id传递给控制器​​?轨道

时间:2016-09-07 15:39:32

标签: ruby-on-rails ruby

我想处理一些具有相同key_id的数据行。我希望他们通过在网址中使用ID进行选择,因此我将/field_data/index/12,其中12表示key_id

我可以通过硬编码key_id

在控制器中手动完成
def index 
    @key_id = 12
    @field_data = FieldDatum.select('field_content').where("key_id = ?", @key_id)
end

我的网址非常笼统:/field_data

那么如何让它能够在URL中获取id?

1 个答案:

答案 0 :(得分:3)

路由

get "/field_data/index/:key_id", to: "field_datas#index"

控制器

def index 
  @field_data = FieldDatum.select('field_content').where(key_id: params[:key_id])
end