问题标签 [has-and-belongs-to-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.

0 投票
1 回答
2230 浏览

cakephp - HABTM 数据未保存 (cakephp)

我有两个模型相关的 HABTM(文件和人员)。

我为与文档相关的每个人添加了一个填充有一个复选框的文档的添加视图。

这是来自控制器的应该进行保存的线路。

我注意到数据没有保存到documents_people 表中。所以,我转储了 $this->data。

文档部分如下所示:

这些是我希望与此文档相关联的人员的 ID。然而,没有任何东西被转移到documents_people。我做错了什么?

0 投票
2 回答
1887 浏览

ruby-on-rails - DataMapper 通过 Resource DELETE(从关联中删除)有 n 不起作用

我有这两个课,

因此,一旦我有一个新帖子,例如:

我在关联中添加和删除时遇到严重问题,例如:

我应该如何从该协会中删除帖子?我正在使用以下内容,但绝对无法正常工作:

所以我真的不知道如何从 BoltUser 数组中删除它。

0 投票
1 回答
12773 浏览

ruby-on-rails - 尝试使用 Accepts_nested_attributes_for 和 has_and_belongs_to_many 但未填充连接表

我正在学习 RoR 并尝试使用 Accepts_nested_attributes_for 和 has_and_belongs_to_many 来提交传统上是两种形式的信息。我在一些网站上读过它们兼容,一些网站不兼容,还有一些网站不知道。作为参考,我使用的是 Rails 2.3.4。我尝试从 Ryan 的 Scraps嵌套模型教程中对我的解决方案进行建模

从我尝试调试的内容来看,我似乎有两个问题,但我不知道为什么。

  1. 当我提交带有嵌套模型的表单时,只发布了部分嵌套模型信息。我只得到第一个字段,而不是用户可能选择的其他“n”个字段
  2. 在发布的单个字段中,没有任何行插入到我为 HABTM 关系创建的连接表中。

这是我的插入尝试的一段代码和相应的日志:

律师模特:

关联模型:

律师总监:

律师新观点:

部分会员:

<%= link_to_function "remove", "$(this).up('.association').remove()" %> <%= link_to '新关联', new_association_path %> <% end %>

律师助理链接:

加入表迁移:

日志捕获:

我可以看到 associations"=>{"association_id"=>"3"} 它只获得了我为特定人拥有的多个关联中的最后一个,并且没有在连接表中创建任何条目。在哪里可能我的代码出错了?

0 投票
2 回答
3407 浏览

ruby-on-rails - HABTM 双嵌套字段_for

有趣的代码段,我无法开始工作。我有以下模型/关系(排除不必要的代码)

显示所有这些信息的表单:

以及处理提交的控制器:

html看起来很干净:

提交的参数如下所示:

我返回“# 的未定义方法'service_subtype'”错误,唯一未更新的表是 HABTM 模型之间的连接表。知道如何解决这个问题或幕后发生了什么吗?我不确定我是否理解此过程背后发生的“魔力”以使其正常工作。似乎大多数人都说 HABTM 不适用于嵌套属性。似乎是这样。变通?

0 投票
2 回答
1338 浏览

mysql - HABTM 查询帮助

我在“文章”和“标签”之间有 HABTM 关系

问题:我只寻找带有“运动”和“户外”标签的文章,而不是只有其中一个标签的文章。

我试过这个:

...但它让我得到的文章只有运动,只有户外,运动+户外

提问什么是正确的查询?(我正在使用 MySQL)

0 投票
1 回答
1299 浏览

cakephp - 有时在 cakephp 作品中编辑自引用 HABTM

我正在与参与者一起使用自引用 HABTM 模型。您注册了一个活动,当您登录到您的预订/个人资料时,您会看到其他参与者的列表,您可以选择将自己和其他人添加到不同的组中;共享酒店房间,共享机场交通等。

到目前为止我所管理的:

1) 在我的个人资料中,我看到所有其他参与者的列表,带有复选框。到目前为止很棒。
2)添加另一个参与者工作正常。下次我编辑时,我添加的参与者显示为已选中。
3)删除另一个参与者也可以,只要您在提交之前仍然检查参与者!

再说一遍:

有3名参与者。我以其中之一的身份登录,我在参与者列表中看到另外 2 个人。我选择检查他们两个。这工作正常(总是)。后来我选择删除其中一个(通过取消选中复选框并点击提交)。这也可以正常工作(总是)。如果我想删除最后一个复选框......没有任何更新(总是!)。奇怪的是,我可以添加和删除任何奇怪的参与者组合,除非我选择一次性删除所有参与者(删除一个且唯一的参与者是“删除所有已检查的参与者”的特殊情况),否则它将始终有效。

据我所知,HABTM 的工作原理是首先删除所有关系,然后重新保存它们。当我一遍又一遍地删除、添加、删除、添加同一个参与者时,我可以在我的表格中看到 - HABTM 表格上的 id 总是在增加。但是,当我一次取消选择所有参与者时,关系不会更新。id 保持不变,所以就像保存从未发生过一样。

这种行为是如此具体和奇特,我觉得我在这里遗漏了一些明显的东西。无论如何,这是相关的代码:

模型

控制器

看法

我正在使用稍微修改过的帮助程序 habtmCheckBoxes,可在此处找到:http ://cakeforge.org/snippet/detail.php?type=snippet&id=190 它的工作原理如下: function habtmCheckBoxes($rows=array(), $selectedArr =array(), $modelName, $wrapTag='p', $checkedDiv, $uncheckedDiv) {}

0 投票
2 回答
3205 浏览

mysql - 如何从 Rails 中的 HABTM 连接表中删除条目?

通过多次测试迭代,我刚刚注意到,当这些模型的实例被删除时,表示两个模型之间的 HABTM 关系的连接表并没有删除条目。删除具有 HABTM 关系的模型实例时,我是否需要做一些特别的事情?

0 投票
1 回答
297 浏览

asp.net - ASP.Net MVC HABTM 协会

在尝试与我的两个模型定义 HABTM 关联时,我一定遗漏了一些东西。我有一个“Product”表、一个“Category”表和一个“ProductsCategories”连接表。在 SQL Server 中,我正在定义连接表上的表之间的关系。但是,当我创建 LINQ to SQL 模型“Product”时,我得到“Product.ProductCategories -> ProductCategory, ProductsCategory.Product -> Product” 是否可以在 asp.net mvc 中定义一个可以给我 Product.Categories 的关系或类别。产品?

0 投票
2 回答
377 浏览

mysql - MySQL - 使用 HABTM 关系计数

我有 3 个表:'cards'、'tags' 和 'cardstags',其中卡片 HABTM 标记

问题:我在“标签”表上执行什么查询来计算关联的“卡片”行数?

我正在寻找这样的东西:

0 投票
3 回答
437 浏览

ruby-on-rails - rails habtm 关系

我有 2 个有has_and_belongs_to_many关系的模型:

我想知道如何通过这种关系获得类别名称,例如我找到了第一个模板:

然后使用t.categories将返回一个对象,但我想有 category.name 作为回报,我该如何实现呢?