【发布时间】:2013-04-11 14:49:20
【问题描述】:
我有一个 Rails 应用程序,可以在其中创建和编辑记录。我创建了一个表单来输入数据,当我使用新/创建操作时它可以正常工作。它会创建一个记录没有问题。但是当我点击编辑操作时,它给了我一个 NilClass:Class 的未定义方法“model_name”。
我不确定这意味着什么。有人可以帮帮我吗?
表格:
<%= form_for(@patient) do |f| %>
<%= f.label :Patient_Last_Name %>
<%= f.text_field :patient_last %>
<%= f.label :Patient_First_Name %>
<%= f.text_field :patient_first %>
<%= f.label :Patient_DOB %>
<%= f.date_select :patient_dob %>
<%= f.label :Primary_Diagnosis %>
<%= f.collection_select(:diagnosis_id, Diagnosis.all, :id, :diagnosis_name)%></br>
<%= f.label :Primary_Physician %>
<%= f.collection_select(:physician_id, Physician.all, :id, :physician_name)%></br>
<%= f.button :submit %>
<% end %>
查看代码:
<td><%= link_to 'Edit', edit_patient_path(patient), :class => 'btn btn-close btn-mini'%></td>
控制器代码:
def edit
@patient = Patient.find(params[:id])
end
编辑视图:
<%= render 'form' %>
当我从表单中删除部分渲染时,URL 将转到正确的路由/url。但是当呈现部分表单时,我不断收到该错误。
【问题讨论】:
-
所以我用@patient.inspect 打印出视图中的变量,它给了我零。我的浏览器指向正确的 url/记录。记录中都有数据。就像控制器没有正确分配变量,但我不知道为什么。
标签: ruby-on-rails-3 model routes