想要为我的工作板显示不同的工作类别,使用简单的表单gem我已将以下内容添加到我的工作表单中。
_form.html.erb
<%= simple_form_for(@job, html: { class: 'form-horizontal' }) do |f| %>
<%= f.collection_select :category_id, Category.all, :id, :name, {prompt: "Choose a category" }, input_html: { class: "dropdown-toggle" } %>
<%= f.input :title, label: "Job Title", input_html: { class: "form-control" } %>
<%= f.input :description, label: "Job Description", input_html: { class: "form-control" } %>
<%= f.input :company, label: "Your Company", input_html: {class: "form-control" } %>
<%= f.input :url, label: "Link to Job", input_html: { class: "form-control" } %>
<br/>
<div class="form-group">
<%= f.submit class: "btn btn-primary" %>
</div>
<% end %>
但是当我去jobs.new.html时会产生以下错误
Jobs#new中的NameError 显示/Users/neilpatel/Desktop/Rails/jobs_board/app/views/jobs/_form.html.erb第3行引发: 未初始化的常量ActionView :: CompiledTemplates :: Category
<%= simple_form_for(@job, html: { class: 'form-horizontal' }) do |f| %>
**<%= f.collection_select :category_id, Category.all, :id, :name, {prompt: "Choose a category" }, input_html: { class: "dropdown-toggle" } %>** -<error
<%= f.input :title, label: "Job Title", input_html: { class: "form-control" } %>
答案 0 :(得分:1)
错误指定您的应用程序中没有Category
模型。这就是为什么rails将Category
视为常量并抛出此错误uninitialized constant
的原因。尝试在Category
目录中添加app/models
模型。
<%= f.collection_select :category_id, Category.all, :id, :name, {prompt: "Choose a category" }, input_html: { class: "dropdown-toggle" } %>
Category.all
应为Modelname.all