在我的 Rails 应用程序中,我有这个模型:
class Project < ActiveRecord::Base
attr_accessible :name, :person_ids
belongs_to :user
has_many :people_projects
has_many :people, :through => :people_projects
end
我不明白的是:
person_ids
当我创建一个新项目时,为什么我的数组开头总是有一个空元素:
Parameters: {"utf8" => "✓", "project" => {"name" => "Testproject", "person_ids" => ["", "1", "2", "3"]}, "commit" => "Create", "id"=>"77"}
这不仅发生在我的Project
班级,而且在所有其他班级has_many through
也发生,这给我带来了很多(主要是与验证相关的)麻烦。
这是我的表格:
<div class="field">
<%= f.label "People" %>
<%= f.select(:person_ids, current_user.people.map { |p| [ p.name, p.id ] }, {}, {:multiple => true}) %>
</div>
感谢任何可以对此有所了解的人。