问题标签 [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.
ruby-on-rails - Has_one 关联应该是一个“只有”一个关联
我有一个 User 和一个 Gallery 模型以及以下关联:
画廊.rb
用户.rb
画廊是通过表单创建的,它不是基于用户创建的(我这样做是因为不允许某些用户创建画廊)
这是具有创建操作的画廊控制器:
画廊控制器.rb
1.)我的第一个问题是:
当我设置像这样的一对一关联时,用户可以创建任意数量的画廊。那么它不是真正的“只有”一个协会吗?(我不认为我对此有概念。为什么没有引发错误?)
2.)我的第二个问题:
为了每个用户只有一个画廊,我对画廊模型中的 user_id 进行了验证
这是避免与一个用户关联的许多画廊记录的正确方法吗?
编辑
感谢 Reuben,我是这样写的:
控制器
在视图中(new.html.erb)
无需 user_id 验证
ruby-on-rails - Rails 3,嵌套形式的评论,错误的路线?
我有一个Posts模型,其中有许多多种语言的帖子。这有点不标准,但为了说明:
即一个帖子有一个EngPost。而 EngPost 在模型中被定义为:
最后,eng_comments 模型是:
routes.rb 定义:
问题 - 无法使用eng_comments 呈现帖子,我试过:
并尝试:
这会导致错误
谢谢。
ruby-on-rails - 有一个在看错表
我试图has one
在 RoR 中建立关系。协议有一个联系人。在协议表中有一个名为 的列contact_id
。
当我尝试像这样调用绿化的联系人时:(<%= agreement.contact.name %>
联系人表有一列name
)我收到错误Unknown column 'contacts.agreement_id'
应该在哪里寻找agreement.contact_id
有什么建议么?
ruby-on-rails - has_one 与 Paperclip 的关系
假设我有 2 个模型,例如 News、Clients。使用回形针的默认选项,我需要为它们中的每一个创建额外的列,例如 (photo_file_name .....) 但我只想创建不同的模型,比如说 Asset
资产.rb
客户端.rb
客户端控制器.rb
_form.html.erb
现在这正在工作,但是如何在显示视图中显示它?我正在这样做:
我知道这是不正确的,因为@client.asset 没有 url 列,怎么办?
ruby-on-rails - 如何拥有多个相同类型的唯一 has_one 关联?
我正在制作一个 ruby 应用程序来跟踪乒乓球比赛的统计数据。到目前为止,这就是我的播放器模型的样子
但是,当我加载页面时,我收到一条错误消息,提示“未知键:来源”。如果你不知道我在做什么,该模型应该包含两个用户对象,一个标有“赢家”,一个标有“输家”。谁能指出我在这里做错了什么?
ruby-on-rails - has_and_belongs_to_many 或 has_many 用于用户/组关系?
我正在开发具有以下模型的 Rails 3.1 应用程序:
用户:
团体:
它们之间有一个连接表,组表也有一个“user_id”列。我希望能够在我的 groups_controller.rb 中写这个
但是当我这样做时,我会遇到以下错误:
我不明白为什么它甚至在寻找那个专栏。任何帮助,将不胜感激!
ruby-on-rails-3 - Rails 3 - 如何通过关联获取数据
整个下午我都在努力从协会获取数据。我有这 3 个模型:
用户
车
用户汽车
表user_cars具有列
如果当前登录的用户拥有汽车,我可以查看所有汽车的声明以及我想打印的每辆汽车。
我正在尝试这样做:
但这给了我错误
我想问你——我是否已经在联想或观点上有过错?
编辑:
ruby-on-rails-3 - 无法批量分配受保护的属性:地址
当我尝试分配嵌套属性时,我在日志中得到以下信息。我已经扫描并尝试了所有我能找到的答案,但没有任何效果。
users
, "authority_id"=>"1", "provider_id"=>"11789", "details"=>"", "directions"=>""}} 用户负载 (0.4ms) SELECT .* FROMusers
WHEREusers
.id
= 4 限制 1警告:无法批量分配受保护的属性:地址
我有 CareHome < 服务的 STI。地址是一种多态关系。
在服务中,我有:
在 CareHomeController#new/create 我有
如果我将 :address 添加到 attr_accessible 我得到错误:
地址(#2560574700) 预期,得到 ActiveSupport::HashWithIndiffergentAccess(#2157282280)
我的 Rails 版本是 3.1.1。
我想这一定是一些微妙的事情,但我已经没有想法可以尝试了。任何帮助表示赞赏!
ruby-on-rails - Rails 3. 为什么我进入编辑页面时我的嵌套记录被删除了?
每个公司都应该有一个 CompanyContact。我的公司表单包含公司联系人字段。当我更新公司并添加新的公司联系人时,它工作正常,因为在公司的显示页面中,它确实显示了新的公司联系人。但是,当我单击将我带到编辑页面的编辑链接时(注意:我什至还没有单击更新按钮),在公司联系人应该是空白的编辑公司表单中。所以我检查了日志,公司联系人被删除了。
DELETE FROM "company_contacts" WHERE "company_contacts"."id" = ? [["id", 4]]
我很困惑,因为我没有调用任何删除操作。
ruby-on-rails - 当我调用 build 时,Rails 嵌套属性被删除
我对 Rails 很陌生,所以很可能这里有一个简单的概念,我只是不明白,但这就是正在发生的事情。
我有一个用户模型(由设计提供支持),每个用户都有自己的照片属性。我知道我可以将照片作为用户的一部分包含在内,但照片实际上是网站的核心内容,所以我更希望它们成为自己的表格。照片模型有一个回形针附件,用于处理实际的照片文件。
问题是:当我以用户身份上传照片时,一切都按计划进行,但由于某种原因,当我返回照片上传页面时,我刚刚上传的照片被删除了。我已经追踪到这行代码:
@photo = @user.build_photo
如果我不调用它,则上传表单会引发 nil 类错误,因为 @user.photo 不存在,但是当我调用它时,它会删除以前上传的照片,这很奇怪,因为就我知道,改变数据库的是创建函数,而不是构建。
这是服务器显示的内容:
在 2012-03-08 10:19:21 -0800 开始 GET "/settings" for 127.0.0.1 由 SettingsController#index 处理为 HTML 用户负载 (0.3ms) SELECT
users
.* FROMusers
WHEREusers
。id
= 6 LIMIT 1 照片负载 (0.3ms) SELECTphotos
.* FROMphotos
WHEREphotos
。user_id
= 6 LIMIT 1 (0.2ms) BEGIN [回形针] 安排删除附件。SQL (0.6ms) 从photos
WHERE中删除photos
。id
= 20 [回形针] 删除附件。
这是我的几个模型和控制器: