问题标签 [has-many]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - :finder_sql 的限制
在 Rails 应用程序中,我在 has_many 声明中使用 :finder_sql 选项。rails 文档说,当我这样做时,“不添加 find_in_collection”。这是什么意思?
ruby - 多态 has_many 自引用
我有许多模型(文章、视频、照片)
现在我正在尝试创建一个related_to 关联,这样
一篇文章可以有许多与之相关的其他文章、视频和照片。视频和照片也可以。
这是我尝试过的:
模块 ActsAsRelatable
结尾
类 RelatedItem < ActiveRecord::Base belongs_to :source, :polymorphic => true belongs_to :related, :polymorphic => true end
然后我在我的三个模型(文章、视频、照片)中添加了acts_as_relatable,并将该模块包含在 ActiveRecord::Base 中
在 ./script/console 中尝试时,我让它添加相关项目并且 id 可以正常工作,但是 source_type 和 related_type 始终相同(从中调用related_items 的对象)我希望related_item 是另一个模型名称。
有什么想法吗?
ruby-on-rails - 我的 [has_many :through] 关联“路径”可以有多深(多少张桌子)?
Agile Rails 书中给出了以下数据库设计示例,用于教授 has_many :通过代码...
[文章]----<[阅读]>----[用户]
这一切一开始都很容易理解。但是,我有可能使用以下数据库设计的情况:
[类型]-----<[文章]-----<[阅读]>-----[用户]
现在这是我的问题:
我可以使用 has_many :through 关联,这样我就可以编写如下代码:
艺术头脑 _users = art.users
如果可以做到这一点,那么如何设置 has_many 关联?
ruby-on-rails - 在 Rails 中反转 has_many
假设我有模型:用户和项目以及它们之间的多对多关系。如何获得具有已定义属性的确切(不再)项目的用户,即具有颜色 = ['red', 'black'] 的项目的用户。
当然我可以这样做:
但是对于更多的属性,这将是相当麻烦的。我也可以这样做:
但是这个也返回了带有颜色的用户= ['red', 'black', 'blue', 'etc']
所以唯一的解决方案是获取所有内容并使用 ruby 语法进行排序?如何在一个 SQL 查询或 Rails AR 语法中做到这一点?
ruby-on-rails - 您可以强制 activerecord 关联更新而不保存它们吗?
我有几个与这has_many
belongs_to
对关联的模型。为了演示,一个客户端有一个服务器,但一个服务器有很多客户端。我可能会做这样的事情:
我的实际应用程序比这复杂得多,但该示例将用于说明。
我想在保存这些对象之前检查它们之间的关联。ActiveRecord 在保存之前不会更新他们的信息。在上面的示例中,直到其中一个人得救之前,the_server
都不知道是谁client1
、client2
或。client3
我确信这有助于提高 active_record 的效率,但它会使内存中的模型实例处于不一致的状态。
我可以在客户端或服务器上调用任何会导致它们更新状态的东西吗?
activerecord - 无法在 has_many 关系中定义 :joins 条件?
我有一个关系表:
将动物与其他动物联系起来。在 SQL 中检索关联的最佳方法是:
而且我找不到用这个在rails中创建适当的has_many关系的方法。显然,没有办法为 has_many 提供加入条件。
我目前正在使用 finder_sql :
但是这种方法有一个很大的缺点,就是打破了activerecord的魔法。例如 :
将无限制地执行finder_sql,获取数千行,然后获取数组的第一个(并失去几个宝贵的秒/请求)。
我想这是 AR 中缺少的功能,但我想先确定一下 :) 谢谢
ruby-on-rails - Rails has_many 关联计数子行
什么是有效抓取父表的所有行以及每行具有的子表数量的“rails 方式”?
我不想使用counter_cache
,因为我想根据某些时间条件运行这些计数。
陈词滥调的博客示例:文章表。每篇文章有 0 条或更多条评论。
我希望能够提取过去一小时、一天、一周内每篇文章的评论数。
但是,理想情况下,我不想遍历列表并对每篇文章进行单独的 sql 调用,也不想用于:include
预取所有数据并在应用服务器上处理它。
我想运行一条 SQL 语句并获得一个包含所有信息的结果集。
我知道我可以硬编码出完整的 SQL,也许可以使用 a.find
并设置:joins
,:group
和:conditions
参数......但我想知道是否有“更好”的方式......又名“Rails 方式”
grails - 带有hasMany的Grails动态脚手架:是错误还是我配置错误?
我是一个 Grails 菜鸟,遇到了一些似乎是错误的东西,但我完全有可能没有正确配置所有内容。
我有两个简单的域类:
和
除了这两个域类的动态脚手架之外,我有两个控制器。
但即使我的数据库中有玩家列表,在创建新团队时我也没有为他们获得多选框。
但是,当我去编辑团队时会出现多选
这是新项目的动态脚手架中的错误,我是否误解了它应该如何工作,还是我需要在这里声明其他内容?
非常感谢任何帮助!我有一些截图,StackOverflow 不允许我添加,因为我很新鲜,但如果有帮助的话,我很乐意向他们展示另一种方式。
ruby-on-rails - has_many 和单表继承
我在两个实体 Feeds 和 Posts 之间有一个 has_many 关系。我也有特定类型的帖子、视频和照片。这是使用单表继承在数据库中构建的。
现在我的 Feed 模型指定了 Feed 和 Posts 之间的 has_many 关系(包括子类型)
有没有更好、更传统的方法来指定这个?还是我拥有的东西尽可能简单?
ruby-on-rails - Rails:belongs_to vs has_one
关于 Rails 协会的一个新手问题。
我有一个 Bug 模型和一个 Status 模型。状态基本上只是一个键/值对表。在可用的选择中,我会说 Bug has_one Status 最有意义。然而,根据这个
内容属于_内容模板。回去看看我是如何描述这个问题的,你会发现它是有效的。使用belongs_to,表接受外键的责任。所以 Content 有一个 content_template_id。而 ContentTemplate 不需要任何东西。我可以随意指点。完毕。
Bug belongs_to Status 会更合适(因为 Bug 应该使用外键)。从语义上讲,他的例子是有道理的,但我的没有。这只是一个怪癖,在这种情况下它看起来很奇怪,还是我不理解/做错了什么?