在我的患者控制器中,我定义了一个名为“erstellen”的动作,并带有视图。该动作/视图用于医生为患者分配治疗。因此,将patient_id传递给此操作非常重要。
在我的病人/节目页面中,我创建了这个链接:
<%= link_to('Erstellen', erstellen_patients_path(@patient), :class => "btn btn-small btn-info" ) %>
产生此输出的原因是什么:
http://localhost:3000/patients/erstellen.6
首先我不明白为什么有一个点而不是一个斜线?
并且第二个问题是,当我重新加载页面时,“。6”消失了,这样就不能给患者一个治疗了!
我的路线:
post "patients/erstellen"
resources :patients do
collection do
get :search2
get :erstellen
end
end
感谢
答案 0 :(得分:1)
您的erstellen
行动应该对某位患者采取行动。因此它不是收集范围,它是成员范围。
resources :patients do
collection do
get :search2
end
member do
get :erstellen
end
end
然后
erstellen_patient_path(@patient)
首先我不明白为什么有一个点而不是一个斜线?
您传递给集合操作的参数被识别为格式说明符,因为该路径不期望任何患者。