问题标签 [has-one]

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 回答
331 浏览

ruby-on-rails - validates_uniqueness_of 范围为 has_one 关系的字段

我有以下型号:

我希望能够在我的Section模型中执行以下操作(call_number是 中的一个字段Section):

这显然行不通,因为Section没有term_id那么我如何将范围限制为关系模型?

我尝试创建一个自定义验证器Section但无济于事(当我创建一个Section带有错误“undefined method 'sections' for nil:NilClass”的新验证器时不起作用):

非常感谢!

0 投票
1 回答
1015 浏览

ruby-on-rails - has_one :through => 多个

出席和担保:

因此:出勤和凭证之间是一对一的关系。

有没有办法不用我想太多来做到这一点?

笔记:其实我不介意想太多。

0 投票
2 回答
123 浏览

ruby-on-rails - ActiveRecord 关系:A has_many Bs AND A has_one B 同时可以吗?

我有一种情况,我不确定如何在 Rails 中处理:

活动has_many :photos和照片belongs_to :event

足够简单

但是,Event 还需要引用单个“关键”照片。

考虑添加:

事件has_one :key_photo, :foreign_key => "photo_id"

但是has_many上面给出的这个工作吗?如果是这样,如何处理已经说过的照片模型中的逆Photo belongs_to :event

我可以向 Photo 添加一个布尔列,该列仅适用于一行(“关键”照片),但这似乎是一种浪费……如果只是一个 1 位列。

0 投票
1 回答
921 浏览

ruby - ActiveRecord 和 has_one & has_many 的使用

考虑这个简单的模型,其中 aProject有一个ProjectType,自然很多Projects可以是这种类型。

所以 a Project has_one :project_type(称为type) 和 a ProjectType has_many :projects

在我的迁移中,我放了(在这个例子中简化了)

我的项目类看起来像这样(在这个例子中再次简化)

我的 ProjectType 看起来像

我写了一个简单的单元测试来检查这个工作

这个测试在断言处抛出一个错误,说

SQL 似乎假设表中有一个project_id字段,但如果 a可以与 many 相关联,project_types那就没有意义了。我怀疑我的问题与我希望能够引用as not有关,但我不确定如何解决这个问题。ProjectTypeProjectsProjectTypeproject.typeproject.project_type

0 投票
1 回答
1021 浏览

ruby-on-rails - Rails:在父模型的视图中创建一个 has_one 模型?

我有两个模型,字符和背景。字符有_one 背景,背景属于_to 字符。我有一个 _menu 部分设置显示在我的角色视图中,以允许用户查看与角色相关的其他模型,例如项目和法术。

但是,Character 与这些其他模型具有 has_many 关系,我无法弄清楚如何正确链接到具有 has_one 关系的模型。

对于 has_many 模型,这是从我的 Character 视图页面添加新页面的方法:

这是菜单部分的代码,一旦创建页面,它将链接到页面:

以及来自我的背景控制器的代码:

有什么建议吗?基本上,我希望有一个链接_以在字符显示页面中创建一个新的背景页面,然后在创建该背景后在菜单部分中显示该背景,并且当用户单击该链接时能够查看和编辑该背景。

我确实尝试像这样编写代码:

但随后 Rails 抱怨 .exists?是一个未定义的方法。我猜 .exists 不适用于 has_one 关系,否则我一开始就错误地使用它。感谢您的任何意见!

0 投票
2 回答
385 浏览

cakephp - 在 cakephp 中编辑数据 b/w 两个模型

我有两个模型,一个是,一个LoginUserdetail。我使用该关系将模型中的数据保存Login在两个模型中。hasone

请让我知道如何编辑它们。

我使用以下代码保存在我的add.ctp文件中:

0 投票
1 回答
1090 浏览

ruby-on-rails - Rails 3 - has_one 模型,如何找到关联记录满足某些条件的记录

我有模型帖子:

我有模型位置:

我需要找到距离给定位置 50 英里的所有帖子。我找了一些例子,但没有找到我需要的东西。我试图以两种方式解决问题,但失败了。我是 Rails 的初学者,遇到的问题不计其数,我认为这对其他使用 has_one 模型的人很有用。

我试过:

post_controller.rb

index.html.erb

它导致错误:

PostsController#index 中的 NoMethodError 出乎意料的是你有一个 nil 对象!您可能期望有一个 Array 的实例。评估 nil 时发生错误。<<

请帮助我有什么问题。也许还有其他一些简单的方法。

我也在posts_controller.rb中试过这个:

在这种情况下,我遇到了 SQL 问题。

0 投票
1 回答
946 浏览

ruby-on-rails - has_one :通过多态 - 有可能吗?

我的应用中有模型:

类注释 < ActiveRecord::Base

结尾

类项目 < ActiveRecord::Base

结尾

课堂讨论 < ActiveRecord::Base

结尾

类票 < ActiveRecord::Base

结尾

一切正常,但有时通过commentable(即comment.commentable.project)从comment 中获取项目并不是很方便。有没有办法在评论模型中制作 has_one 项目?

0 投票
2 回答
359 浏览

ruby-on-rails - 无法实现 has_one 关系

我正在尝试创建一个帐户管理系统,允许一个帐户有一个帐单地址。我希望帐户和地址有自己的控制器和模型。管理员用户将创建一个新帐户,然后被重定向为该帐户创建一个新的帐单地址。第一部分有效,我能够创建帐户,但第二部分仅将 account_id 属性保存到地址表中。下面是我的代码:

account_controller

地址控制器

account_model

地址模型

我还在我的 routes.rb 文件中添加了以下内容

最后,下面是相关表的架构

(我对编程和 Rails 还很陌生,所以我发布了我认为相关的内容。)

添加了我打开新帐户页面然后进入新地址页面时的日志。

0 投票
1 回答
3392 浏览

ruby-on-rails - Rails 3:使用 ActiveAdmin 和 has_one 进行批量分配

我正在开发一个 Rails 应用程序,其中有两个模型UserClient. User由设计支持并负责身份验证并has_one Client保存给定用户的客户端详细信息。这种关系始终存在,因为我确保Client在创建User.

对于我正在使用的管理区域ActiveAdmin。现在,当我尝试User通过管理界面创建一个时,我使用这样的表单:

问题是 要么 要么被保存User并且Client页面被重新加载并出现验证错误。我检查了 rails 控制台,WARNING: Can't mass-assign protected attributes: client_attributes每次尝试创建User.

我已经搜索了这个问题,发现为了允许批量分配,必须为允许分配attr_accessible的每个字段定义。因此,我已将此指令放入Client上述每个字段的模型中,并且消息不断出现,从而阻止模型正确保存。

有人对此有任何线索吗?