Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/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 4 Rails协会已经通过了许多_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails 4 Rails协会已经通过了许多

Ruby on rails 4 Rails协会已经通过了许多,ruby-on-rails-4,Ruby On Rails 4,我无法掌握以下rails关联的详细理解 你经历过很多吗 你和你属于很多人吗 这种关联的作用和对表的影响?请帮助Has\u many基本上是说一件事链接到许多,例如一个类别中有许多产品。所属的基本上是另一种方式,所以一个产品属于这个类别。它们允许您从链接到其他表的表中检索数据,例如,您可以通过该链接从产品表中获取特定产品的类别标题。这有用吗?来自 Rails提供了两种不同的方法来声明多对多关系 模型之间。更简单的方法是使用has_和(u属于)(u many),, 允许您直接进行关联: class

我无法掌握以下rails关联的详细理解

你经历过很多吗 你和你属于很多人吗


这种关联的作用和对表的影响?请帮助

Has\u many基本上是说一件事链接到许多,例如一个类别中有许多产品。所属的基本上是另一种方式,所以一个产品属于这个类别。它们允许您从链接到其他表的表中检索数据,例如,您可以通过该链接从产品表中获取特定产品的类别标题。这有用吗?

来自

Rails提供了两种不同的方法来声明多对多关系 模型之间。更简单的方法是使用has_和(u属于)(u many),, 允许您直接进行关联:

class Assembly < ActiveRecord::Base
  has_and_belongs_to_many :parts
end

class Part < ActiveRecord::Base
  has_and_belongs_to_many :assemblies
end
类程序集
声明多对多关系的第二种方法是使用 有很多:通过。这使得协会通过 加入模型:

class Assembly < ActiveRecord::Base
  has_many :manifests
  has_many :parts, through: :manifests
end

class Manifest < ActiveRecord::Base
  belongs_to :assembly
  belongs_to :part
end

class Part < ActiveRecord::Base
  has_many :manifests
  has_many :assemblies, through: :manifests
end
类程序集
最简单的经验法则是,你应该建立一个有很多 :如果需要使用关系模型,则通过关系 作为一个独立的实体。如果你不需要对这个 在关系模型中,设置 你和你属于很多关系(尽管你需要记住) 在数据库中创建联接表)

您应该使用has\u many:如果需要验证、回调, 或联接模型上的其他属性

让我强调最重要的一句话:

最简单的经验法则是,如果需要将关系模型作为一个独立的实体来使用,那么应该设置一个has_many:through关系。如果您不需要对关系模型执行任何操作,那么设置has\u和\u-besides\u-to\u-many关系可能会更简单


拥有并属于许多模型
使用起来非常简单,但您无法直接访问相关对象,只能保存对两个模型的引用,其他什么都不能

虽然
有很多,但通过
可以执行user.role之类的操作,并获取所有连接的第二个模型实例的列表。它还将使您能够访问特定于第一个和第二个模型之间关系的数据


这一切都取决于你是否需要一些快速简单的东西,比如一个模型或者你想要建立一个长期的项目。我建议您了解更多详细信息。

有一点,但我想问的是1)has\u many到2)has\u和\u属于\u manySee,如果这有帮助的话:以及:我假设您已经阅读了官方文档。