40得票6回答
Rails模型具有自身的has_many关联

我有一个事件模型。事件可以有父事件,从模型中的一个列(parent_event_id)设置。我需要在模型上能够执行has_many:event,这样我就可以只做例如event.child_event或event.parent_event。但是我的搜索效果并不好。 我的模型: class E...

35得票4回答
Rails中针对has_many :through关系编写RSpec测试

我对测试和Rails很陌生,但我正试图正确地掌握我的TDD过程。 我想知道你是否使用任何范例来测试has_many:通过关系(或者一般的has_many关系)? 例如,我发现在我的模型规范中,我肯定会编写简单的测试来检查关联方法的两端。 即:require 'spec_helper' ...

35得票4回答
Rails: belongs_to vs has_one

一道有关Rails关联的新手问题。 我有一个Bug模型和一个Status模型。Status基本上只是一个键/值对表。在可用的选择中,我会说Bug has_one Status是最合适的。然而,根据这个: “Content belongs_to ContentTemplate. Go bac...

33得票1回答
如何在Yii2的hasMany关系中使用常量作为ON条件

我试图创建一个多态关联,在Rails中很常见,但在Yii2中不幸地没有。作为实现的一部分,我需要定义关系:public function getImages() { return $this->hasMany(RecipeImage::className(), ['...

29得票4回答
Rails - 检查 has_many 关联中的记录是否存在

我不确定我的问题是否表达正确。 我有三个模型:User,Item和UserItem。user has_many :user_items user has_many :items, through :user_items item has_many :user_items item has_...

29得票5回答
Rails has_many关联计算子行数

什么是高效地获取父表所有行以及每行子表数量的“Rails Way”? 我不想使用 `counter_cache`,因为我想基于某些时间条件运行这些计数。 典型的博客示例:文章表。每篇文章有0个或多个评论。 我想能够获取每篇文章在过去一小时、一天、一周内有多少评论。 理想情况下,我不想遍...

27得票3回答
Rails:非id外键查找ActiveRecord

我希望ActiveRecord可以通过表中的非id列进行查找。 当我提供我的代码示例时,希望这一点是清楚的。class CoachClass < ActiveRecord::Base belongs_to :coach end class Coach < ActiveReco...

25得票3回答
RAILS: 如何获取一个模型的 has_many 关联

如何获取一个模型的 has_many 关联? 例如,如果我有这个类:class A < ActiveRecord::Base has_many B has_many C end 我想要一个像这样的方法:A.get_has_many 返回[B,C] 这可行吗?谢谢!

22得票2回答
如何使用paper_trail修正has_many/belongs_to关联的版本问题

我在Rails中使用paper_trail来跟踪我的模型版本。但是github存储库中的文档表明,该宝石不支持has_many,belongs_to关联。 假设我有一个记录一些公司CEO名称的应用程序:class Company < ActiveRecord::Base has_m...

21得票3回答
“Rails方式”如何强制执行具有多个但仅有一个当前关联的has_many?

我有一个简单的 Rails 应用程序,其中包含项目和阶段模型。一个项目可以拥有多个阶段,但一次只能有一个阶段处于活动状态(即“当前”)。我仍然希望其他阶段可访问,但是当前阶段应该是应用程序的主要锚点。如何实现“有多个但只有一个当前关联”的要求对于处理模型访问、验证以及创建更新的视图/表单方式等...