2

URLにパラメータを表示しようとしているので、追加しました

patient_record_path(:limit => 10)

私は今、これを正しくルーティングしようとしています。現在、エラーが発生しています

No route matches {:action=>"show", :controller=>"patient_record", :limit=>10}

現在使用しているルートは

match 'patient_record/show&limit', :to => 'patient_record#show'
4

1 に答える 1

2

ルートに制限を追加しないでください。次のように簡単にルートを定義します。

match 'patient_record/show', :to => 'patient_record#show', :as => 'patient_record_show'

ただし、より良い解決策は

resources :patient_records

これにより、次のパス ヘルパーが作成されます。

patient_records_path => "/patient_records" => 'patient_record#index'
new_patient_record_path => "/patient_records/new" => 'patient_record#new'
edit_patient_record_path(:id) => /patient_records/:id/edit => 'patient_record#edit'
patient_record_path(:id) => "/patient_records/:id" => 'patient_record#show'

更新: パス ヘルパーの間違った使用

あなたの質問をもう一度見て、別のバグを見つけました: show のパス ヘルパーにはレコードが必要です。正しい使い方は次のとおりです。

# path to show
patient_record_path(@patient_record, :limit => 10)

# path to index
patient_records_path(:limit => 10)
于 2013-06-20T15:13:58.977 に答える