Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.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 Rails有一个关联_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails Rails有一个关联

Ruby on rails Rails有一个关联,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我有三种型号: class User < ActiveRecord::Base has_many :basiccases end class Basiccase < ActiveRecord::Base belongs_to :user belongs_to :form3_c end class Form3C < ActiveRecord::Base has_one :basiccases end class用户

我有三种型号:

class User < ActiveRecord::Base
  has_many :basiccases
end

class Basiccase < ActiveRecord::Base
  belongs_to :user
  belongs_to :form3_c
end

class Form3C < ActiveRecord::Base
  has_one :basiccases
end
class用户

如何将新的
Form3C
添加到
Basiccase
?我是否需要使用
Basiccase
控制器或
Form3C
控制器来创建表单?如果我使用
Form3cController
如何在
BasiccaseController?

虽然您对模型的命名没有那么令人信服,但我假设您的
basiccases
表有一列
form3c\u id

您需要为
form3c
对象创建一个表单,然后在controller中您可以构建一个
basiccase
对象,如
@form3c\u build\u basiccase
,该对象将自动将
form3c\u id
作为外键。参考


或者您可以选择
form3c
model
accepts\u nested\u attributes\u for:basiccase
。看看吧。

虽然您对模型的命名没有那么令人信服,但我假设您的
基本情况表有一列
form3c\u id

您需要为
form3c
对象创建一个表单,然后在controller中您可以构建一个
basiccase
对象,如
@form3c\u build\u basiccase
,该对象将自动将
form3c\u id
作为外键。参考


或者您可以选择
form3c
model
accepts\u nested\u attributes\u for:basiccase
。请参阅。

has\u one
这样的关系是在模型而不是控制器上定义的。我认为您希望这样做(能够将
Form3c
添加到
基本案例中
——不确定您希望关系朝哪个方向发展):

class Form3c

有关构建控制器和表单(视图)的提示,请参见,从第6节开始。

has\u one
这样的关系是在模型而不是控制器上定义的。我认为您希望这样做(能够将
Form3c
添加到
基本案例中
——不确定您希望关系朝哪个方向发展):

class Form3c

有关构建控制器和表单(视图)的提示,请参见,从第6节开始。

应将
的has_one
关系放在模型中,而不是控制器中。因此,如果您有一个
Form3C
model类,请尝试在那里添加关系。
has\u one
关系应变为单数,如
has\u one:basiccase
中所示。通常,您将从
Form3C
实例:
self构建
基本用例。build\u Basiccase
将构建
属于
Form3C
的基本用例。
有一个
关系应该放在模型中,而不是控制器中。因此,如果您有一个
Form3C
model类,请尝试在那里添加关系。
has\u one
关系应变为单数,如
has\u one:basiccase
中所示。您通常会从
Form3C
实例中构建
基本用例。build\u Basiccase
将构建
属于
Form3C
的基本用例。我真的很困惑在哪里保持has\u one关系,因为两者都是一对一的。我的要求是用户应该能够在基本案例中添加新表单。你能建议我如何做到这一点吗?我真的很困惑在哪里保持has_one关系,因为两者都是一对一的。我的要求是用户应该能够添加新的形式到一个基本的情况。你能建议我如何才能做到这一点?
class Form3c < ActiveRecord::Base
  belongs_to :basiccase
end

class Basiccase < ActiveRecord::Base
  belongs_to :user
  has_one :form3c
end