我有一个叫做Contact的模型,has_one是这样的。如何让form.select在Rails中返回一个模型?
class Contact < ActiveRecord::Base
has_one :guest, :class_name => "Contact", :foreign_key => "guest"
end
在我创建视图我使用的是选择辅助方法,列出了可能被选择作为像这样客人的所有联系人...
<% form_for(@contact) do |f| %>
<%= f.error_messages %>
...
<p>
<%= f.label :guest %><br />
<% @guests = Contact.find(:all, :order => "lastname").map { |u| [u.lastname + ', ' + u.firstname, u.id] } %>
<%= f.select :guest, @guests, {:include_blank => true} %>
</p>
...
<% end %>
每当这个表单提交,我得到一个错误表示它期待一个联系人,但得到一个字符串。
在将当前联系人保存到数据库之前,我应该在何处以及如何将表单提交的字符串转换为联系人?
是的。我的用例是解决方案场景......谢谢。 – 2009-05-04 22:30:37