问题标签 [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.
ruby-on-rails - 当假定记录可能不存在时,Ruby on Rails 防止出现 nil 错误
我正在构建一个简单的图书签出应用程序。我需要做的一件事是确定一本书是否已签出。我通过 book_check_out 类设置了我的人员和书籍类之间的关联。我的目标是使用 book 的 checked_out 属性来确定当前是否已签出一本书。然而,在我目前的实现中,当一本书没有被签出并且我参考 book.checked_out.XXX 我收到错误“你没想到它有一个 nil 对象! ”我的目标是使用 book.checked_out 两个在某些视图中,目的表明是的,该书已被签出,而在其他视图中,则显示当前已签出给谁。
ruby-on-rails - 如何在我的装置中加载带有外键的 HABTM 关系?
我有以下两个模型:School 和 User,以及它们之间的 HABTM 关系,带有一个连接表。
在这个连接表中,引用 User 表的外键没有被调用user_id
,但是student_id
。
我想在我的用户和学校装置中创建一个学校和一个用户,但是在用户中定义的 foreign_key 似乎是一个问题。
fixtures/users.yml
:
fixtures/schools.yml
:
加载上面的装置会返回一个 ActiveRecord 异常:
ActiveRecord::StatementInvalid: Mysql::Error: Unknown column 'user_id' in 'field list': INSERT INTO schools_students (student_id, user_id) VALUES (6562055, 14302562)
我究竟做错了什么 ?
php - Yii框架多对多关系
Yii框架中保存和更新多对多关系的方法是什么?
ruby-on-rails - 如何在工厂女孩中创建 has_and_belongs_to_many 关联
鉴于以下
您如何为公司和用户定义工厂,包括双向关联?这是我的尝试
现在我试试
也许不出所料,这会导致无限循环,因为工厂递归地使用彼此来定义自己。
更令人惊讶的是,我在任何地方都没有提到如何做到这一点,是否有定义必要工厂的模式或者我在做一些根本错误的事情?
ruby-on-rails - 如何管理与 Rails 的 n:n 关系?
假设我有一个Company
,有很多Employees
,每个都Employee
可以有很多Companies
。
基本上我会有:
和
但是后来我对如何获得以下内容感到困惑:
- 名称以“John”开头的公司的所有员工
- 一家公司的所有员工首先按姓名排序,然后按电子邮件排序。
有什么我不知道的魔法吗?该示例仅用于演示,如果它可以帮助您更好地解释,请随意做出假设或更改它。
database - HABTM-Relation :为所有其他记录创建关系
如果我想向TABLE A添加一条记录,是否有一种有效的方法可以在JOIN TABLE中为TABLE B中的许多(或所有)记录添加一条记录?
我尝试构建一个简单的任务管理(在 CakePHP 中)。一个用户添加了一个任务,并且将与当前用户在同一组中的每个其他用户添加一个连接。
目前,我使用 find('list') 方法检索 ID 并将它们存储在变量中。但我认为如果组增长,PHP 缓存将无法在单个变量中处理这么多数据。
php - cakephp habtm 关系(保存数据)
与 HABTM 相关的问题已在 stackoverflow 上以一些不错的数量发布,但我仍在寻找解决问题的方法。
我正在创建一个允许基于特定子类别创建主题的应用程序。在添加主题时,会要求用户提供标签(在同一表单上)。现在,当用户通过单击添加按钮完成向主题添加标签时,主题已成功添加,但标签未添加。
我已经为主题和标签创建了连接表tbl_tags_topics.
(如 cakephp 的约定中所定义),并在主题和标签的模型中正确定义了“hasAndBelongsToMany”数组。
我现在缺少什么步骤。?
我还有一个与此相关的问题,但是当我能够成功地将与主题相关的标签发送到数据库时,我会发布它。(功能类似于stackoverflow的标签添加和附加功能)
非常感谢任何帮助。如果你找到任何关于 HABTM 的好教程,也请告诉我。
谢谢
ruby-on-rails - 验证 habtm 关联的长度而不保存
我有一个与组有 HABTM 关系的用户模型。我不希望用户能够超过 5 个组,因此想验证 HABTM 关系的长度。
在编辑用户页面上,我有一个复选框列表,用户可以在其中选择他们想要加入的组(我使用 formtastic 作为表单)。
在我的用户控制器中,我正在调用:
这导致rails自动更新关联。
在我的用户模型中,我有以下内容:
这导致表单验证失败,但 update_attributes 调用已更新数据库以反映对关联组的更改。这样,每次用户单击保存按钮时,他们的组关联都会保存,即使记录无效。
解决这个问题的最佳方法是什么?
我认为也许验证需要在组模型而不是用户模型上,这行得通吗?理想情况下,我想在不保存记录的情况下更新关联的组,进行验证,然后保存记录。
ruby-on-rails - has_and_belongs_to_many 关联的排序
在我的 Rails 应用程序中,我有两个与 has_and_belongs_to_many 相关的模型。这意味着有一个连接表。
想象一下我将用户添加到游戏中的场景。如果我想添加一个用户,我会:
假设我想知道添加这些用户的顺序。我可以做这个:
我的问题是:
如果此列表保证每次都以相同的方式读取,则排序是否?
如果是这样,在游戏中重新排序用户的干净方法是什么?
ruby-on-rails - 在保存与 HABTM 一起使用的表单之前做一些事情
我目前有 3 张桌子。
片段标签片段标签
我正在使用HABTM。
所以我做了一个表格来保存带有标签的片段。关键字位于文本字段中,以逗号分隔。
我需要做的是从此文本字段中获取字符串,循环关键字,检查它们是否存在,如果不存在,则创建它们,然后保存片段。
我尝试了 before_save 但它似乎并没有那样做..
所以如果你能帮助我,那就太好了!
非常感谢!