Formtastic Collection_select不相关模型

时间:2011-07-04 17:19:13

标签: ruby-on-rails-3 formtastic

也许这是错误的做事方式 - 如果你拥有它们,我会接受任何更好的建议!

我们有一个简单的订购系统 - 我们的订单有很多里程碑,每个里程碑都属于一个订单。

顺便说一句,每个里程碑也分配了用户,但我不想在两者之间建立关系,因为我的用户也拥有订单......

在我的里程碑表格中,我有以下内容:

<%= semantic_form_for([@order, @milestone]) do |f| %>
.....
 <div class="field">
    <%= f.label :milestone_user %><br />
    <%= f.input :milestone_user, :as => :radio, :collection => User.find(:all, :order => "name ASC") %>
  </div>
....
 <%= f.submit %>
<% end %>

这一切都很精彩,我可以看到我的用户呈现为单选按钮。

问题在于,当我保存时,我留下的是用户ID而不是名称。

如何将其传输到名称?

谢谢!

1 个答案:

答案 0 :(得分:0)

如果您的模型中有正确的关联,则以下情况应该有效(昨天只在View模板中执行)

place.cplace.name

其中,在我的模特中:

class Place < ActiveRecord::Base
  attr_accessible :name, :cplace_id, :cmoney_id, :copen_id, :description

  belongs_to :user
  belongs_to :cplace
...
end

class Cplace < ActiveRecord::Base

  attr_accessible :name, :description

  has_many :places
...
end

即使我在Place模型中的cplace(类别地点)字段命名为cplace_id,您也可以通过

来拯救名称或任何其他字段
place.cplace.name

其中place是包含Place ... instance ...

的实例变量

希望它有所帮助,并且编码愉快!