-1

我如何将项目与关联关联起来。这里是一个例子,这里是模型

-Customer
-Phone
-PhoneType

Customer          Phone             PhoneType
Id                Id                Id
First             Number            Description
Last              Phone_Type_Id
Email             isViewed
Password
...

他的关系如下

Customer
  has_many phone
  accepts_nested_attributes_for :phone, allow_destroy: :true
Phone
  belongs_to :customer
  has_one :phone_type
  accepts_nested_attributes_for :phone, allow_destroy: :true
PhoneType
  belongs_to :phone

我的表单视图在 Customer#edit 视图中遵循的工作方式我呈现了一个由其他字段组成的通用表单,在其中我有以下代码

<%= f.fields_for :phones do |b| %>
<fieldset>
    <%= b.label :number %>
    <%= b.select :PhoneType %>  ## issues is here
    <%= b.label :isViewed %>
</fieldset>
<% end %>

提前致谢!

4

1 回答 1

0

尝试

:phone_type 

而不是在表单中使用驼峰式(PhoneType)。您在电话模型中的关联需要一个名为 :phone_type 的字段,因此您需要解决此问题。

此外,您现在的视图中呈现的是什么?你有任何错误吗?

所以你想让用户通过从下拉列表中选择描述来选择电话类型吗?你可以尝试类似的东西

<%= select(:phone_type, :phone_type_id, PhoneType.all, :id, :description) %>

最后,您可能想看看简单的表单 gem.... https://github.com/plataformatec/simple_form/

于 2012-08-10T15:09:08.193 回答