私のビューまたは私のルートのlink_toコードに問題があります。私は、ビューからプライマリキー以外の値を渡して、その値を使用してクエリを実行しようとしています。私が何をしていても、常にそのテーブルのIDを唯一のパラメータとして取ります。ここで 他の値をルーティングするRails 4のID:
は、私の見解である<td> <%= link_to c.app_version_id, compliance_suite_path(:app_version_id => c.app_version_id) %></td>
マイルート
resources :suites, :only => [:index] do
member do
get 'report'
end
member do
get 'compliance', param: :app_version_id
end
エンド
私は熊手ルートをすれば、私は取得
/スイート/ GET compliance_suite:ID /コンプライアンスを(。:format)スイート#compatibility {:param =>:app_version_id}
ここで私が使用しているコントローラ内の他の方法持っている今、ちょうどベビーカーリストに
def compliance
Rails.logger.info "***********PARAMS PARAMS *******************"
Rails.logger.info {params.inspect}
end
を表示しようとしている私のコントローラである:私はちょうど私が別の値を使用したい、この一つの方法を持っているIDをクエリを実行するアプリケーションのバージョンID。だから私は、コントローラ全体がこの他のIDを1つの方法で使うことを望まない。私が望む価値は私の見解で、私はそれを私のテーブルで見ることができます。私のコントローラでは、常に:idと決してapp_version_id。
私のルートか自分のlink_toですか?
あなたは '追加しました:コントローラーで許可されるのparamsにapp_version_id'? – lusketeer