将子女分配给父母之一的父母之一
问题描述:
我有问题如何创建将子女分配给父母之一的表单。我的孩子节点是在系统中定义的,我去了孩子(别名),并希望将其分配给父母联系人之一)(或创建新的)。我如何创建这样的表单?将子女分配给父母之一的父母之一
class Alias < ActiveRecord::Base
belongs_to :user
belongs_to :contact
end
class Contact < ActiveRecord::Base
has_many :aliases
belongs_to :user
end
所以我有别名和夫妇联系的几个对象,但我不想去联系,有分配别名,但去别名,并从(例如)选择框联系的一个拾音器。
答
有很多方法可以选择关联ID。选择框可能是页面上空间效率最高的选项,但如果没有可能的关联,则有时单选按钮可以很好地工作。
我觉得这样的东西可能适合你。这假定你在你的控制器内部分配@contacts
到Contact.all
。
= form_for @alias do |f|
= f.label :contact_id, "Contact"
= f.collection_select :contact_id, @contacts, :id, :full_names
这里假定您的联系人中有一个名为“full_names”的字段。把任何你想要显示的字段放在选择框中。
从Alias
创建Contact
比较棘手,我个人不推荐它。以下是解释如何做到这一点,虽然几个问题:
Does accepts_nested_attributes_for work with belongs_to?
Getting fields_for and accepts_nested_attributes_for to work with a belongs_to relationship
我希望帮助。