Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 如何将表单数据保存到rails 3中具有一对一关系的不同模型?_Ruby On Rails 3_Nested Attributes - Fatal编程技术网

Ruby on rails 3 如何将表单数据保存到rails 3中具有一对一关系的不同模型?

Ruby on rails 3 如何将表单数据保存到rails 3中具有一对一关系的不同模型?,ruby-on-rails-3,nested-attributes,Ruby On Rails 3,Nested Attributes,我有一个用户控制器和一个用户模型。在我的用户表中,我有有限的字段。但现在我想为用户银行信息和用户个人信息创建单独的表,并仅通过一个表单保存。这怎么可能呢?我确信他们一定是解决了这个问题的原因。请检查如何解决这个问题 基本上,您可以在用户类中添加以下内容: class User < AR has_one :profile has_one :address accepts_nested_attributes_for :profile, :adress attr_accessib

我有一个用户控制器和一个用户模型。在我的用户表中,我有有限的字段。但现在我想为用户银行信息和用户个人信息创建单独的表,并仅通过一个表单保存。这怎么可能呢?我确信他们一定是解决了这个问题的原因。

请检查如何解决这个问题

基本上,您可以在用户类中添加以下内容:

class User < AR
  has_one :profile
  has_one :address
  accepts_nested_attributes_for :profile, :adress
  attr_accessible :name, :email, :profile_attributes, address_attributes #etc
end

我需要使用“attribute=>:accessible”方法吗?这对两个模型来说非常有用,但我必须将数据放在多个表中,这看起来很有问题。他们的解决方案是什么?Hi ravindra,看看我更新的答案,看看如何添加更多我之前做过,这个技巧很有效,但不显示其他模型字段。我两天前就试过了。感谢支持“但不显示其他模型字段”???我不明白,在什么情况下?
=form_for @user do |user_form|
  = user_form.text_field :name
  = user_form.field_for :profile do |profile_form|
    =profile_form.text_field :bank_name
  = user_form.field_for :address do |address_form|
    =address_form.text_field :city