我有一个表,类别我有类别和ID的名称。我必须创建一个表单,我需要显示一个下拉框,其中包含表格中的类别列表。由于我是铁轨上红宝石的初学者,我不知道该怎么做。请帮忙。 这是我的_from.html.erb
<%= form_for(@xyz) do |f| %>
<% if @xyz.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@xyz.errors.count, "error") %> prohibited this xyz from being saved:</h2>
<ul>
<% @xyz.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<select>
<%= options_from_collection_for_select(@category.categories, "id", "categ_name") %>
</select>
</div>
<div class="field">
<%= f.label :email %><br />
<%= f.text_field :email %>
</div>
<div class="field">
<%= f.label :avatar %><br />
<%= f.file_field :avatar %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
我尝试使用此&lt;%= optin%&gt;事情,但我有错误。 这是我的模特
class Xyz < ActiveRecord::Base
attr_accessible :email, :name, :avatar
has_attached_file :avatar
validates_attachment_content_type :avatar, :content_type => 'video/mp4'
end
答案 0 :(得分:0)
你可以改变这个:
<select>
<%= options_from_collection_for_select(@categorey.categoriesl, "id", "categ_name") %>
</select>
到
<%= select_tag "categories", options_from_collection_for_select(Category.all, "id", "categ_name") %>
这将为您生成id
个&#34;类别&#34;您可能应该更改它,因此它在params中正确嵌套
不确定@category.categories
看起来没有在帖子中的任何地方引用它,但如果它是一个数组则使用
<%= select_tag "categories", options_for_select(Categorey.scoped.pluck(:name)) %>