Rails own_to 关联(带有 :class_name)返回 nil

2023-12-28

我对 Rails 开发比较陌生,并且遇到了一个小的关联问题。我想将一个关联命名为与其所链接的模型不同的名称。

我有以下2个型号:

class User < ActiveRecord::Base
  has_many :events
end

class Event < ActiveRecord::Base
  belongs_to :admin, :class_name => "User" # So we can call event.admin to retrieve the User who owns this Event
end

我建立一个用户如下:

event = event.create! :title => "New Event"

user = User.create! :username => "thinkswan"
user.events << event
user.save

当我跳入控制台时,我收到以下信息:

irb> user = User.find(1)
irb> user.events
=> [#<Event id: 1, title: "New Event", user_id: 1, created_at: "2011-06-09 06:41:09", updated_at: "2011-06-09 06:41:10">]

irb> event = Event.find(1)
irb> event.user_id
=> 1
irb> event.admin
=> nil

谁能解释一下为什么admin关联没有返回它指向的用户?谢谢!


您需要指定两者:class_name and :foreign_key, 例如:

belongs_to :admin, :class_name => "User", :foreign_key => "user_id"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rails own_to 关联(带有 :class_name)返回 nil 的相关文章

  • Ruby mp3 Id3 解析

    目前我正在从事一个音乐项目 处理用户 mp3 上传 问题是我找不到适用于所有文件的 id3 库 我努力了id3 ruby and Mp3Info库 但它们都没有给我一致正确的结果 例如 最常见的问题 错误的流参数 比特率和采样率 有时是持续
  • 为什么 rand() 总是返回相同的数字?

    我在用 兰特 200 在我的 Rails 应用程序中 当我在控制台中运行它时 它总是返回随机数 但如果我在应用程序行中使用它 index rand 200 索引总是相同的号码 为什么会这样以及如何克服这个问题 简单的伪随机数生成器实际上生成
  • 将 ruby​​ 类转换为模块比使用改进更好的方法?

    Module refine http ruby doc org core 2 0 0 Module html method i refine方法接受一个类和一个块并返回一个细化模块 所以我想我可以定义 class Class def inc
  • Ruby 的字符串并置功能的官方文档在哪里?

    我最近意识到 如果你并置一系列 Ruby 字符串文字 例如 a b c 它相当于这些字符串文字的串联 但是 我在任何地方都找不到这种语言功能的记录 我使用术语 并置 和 串联 进行搜索 但只在几个 StackOverflow 响应中找到了对
  • Rails 3 Mechanize - SocketError:getaddrinfo:主机或名称未知

    我正在使用 mechanize 但出现此错误 有人可以帮帮我吗 我已将元刷新设置为 true 错误日志 SocketError getaddrinfo Host or name not known form C Ruby192 lib ru
  • 回滚后是否应该删除迁移

    我对 ruby 和 Rails 相当陌生 刚刚开始了解迁移 我的问题是回滚后删除迁移的最佳实践或正确时间是什么 到目前为止 我读到的内容是回滚后是否删除迁移的观点问题 但是在团队中工作时删除迁移是否有任何重大影响 以及保留迁移文件相对于删除
  • 如何在服务调用后检查 rspec 中的数组更改?

    目标很简单 例如我们有一个数组 name ghost state rejected name donkey state rejected 运行服务调用后UpdateAllUsers 这会将所有用户更改为 accepted name ghos
  • 在 ActiveAdmin 或打印解决方案中动态更改分页

    我是 Activeadmin 和 Rails 的新手 我需要一些帮助 我有一个分页模型 我想允许用户更改分页值或完全禁用它 这样它就可以打印 到打印机 所有记录 或过滤后的记录 我知道我可以在 before filter 中使用 per p
  • Rails 4 的 mobile_fu

    我正在尝试将我的应用程序从 Rails 3 2 13 切换到 Rails 4 在此过程中 我遇到了一个主要障碍 我使用 gem mobile fu 来确定用户是否来自移动设备 该 gem 需要 Railties 3 2 13 但 Rails
  • Rails 从 OrdersController 更新用户模型的属性

    这是我的代码 订单控制器类 def create order Order new params order if order purchase work GATEWAY store credit card options result wo
  • CakePHP 身份验证插件身份关联

    我正在使用 CakePHP 3 8 并迁移到身份验证插件 https book cakephp org authentication 1 1 en index html https book cakephp org authenticati
  • 多次部署后 Heroku Slug 大小

    我有一个红宝石 on Rails非常接近 slug 大小限制 300mb 的应用程序 我已经尽可能地减小了尺寸 slugignore但还没有得到我想要的结果 一时兴起 我尝试创建一个新的Heroku应用程序并向其部署相同的 git 存储库
  • 带回形针、导轨的水印图像 4

    我一直在尝试按照中列出的答案向我的图像添加水印带有回形针的水印 https stackoverflow com questions 13517757 watermark with paperclip 水印 rb module Papercl
  • 无法使用 Rails 6 Actiontext 渲染 youtube 嵌入 iframe

    我已经设置了一个自定义嵌入模型 这样我就可以将 Instagram 或 YouTube 嵌入等内容添加到我网站上的 ActionText 内容中 它适用于 Instagram 嵌入 但不适用于 YouTube 作为参考 我要显示的 yout
  • Capybara with Rails:如何仅查找不可见元素

    我正在 Rails 项目 Rails 5 2 0 中使用 Capybara capybara 3 1 0 进行系统测试 确保元素不可见的方法是什么 我当时用的是visible false选项 直到我发现它也匹配可见元素 例如我使用 find
  • 使用redirect_to :create 动作

    我正在尝试重定向到另一个控制器的创建方法 但是 我找不到将方法设置为 POST 的方法 这将导致调用索引方法 使用 method gt post只是创建一个新参数 但不会更改 http 方法 有什么想法如何重定向到创建方法吗 您无法在重定向
  • Rspec to have(n).items undefined 方法

    我正在尝试遵循指南关于代码 tuts http code tutsplus com tutorials ruby for newbies testing with rspec net 21297我不断收到错误 这是我的库规范 require
  • puma systemd 脚本无法启动 puma

    我已经从多个来源复制并粘贴了以下美洲狮系统启动脚本的片段 但它不起作用 系统是Debian 9 6 用户rails红宝石通过安装rvm 用户rails可以启动命令RAILS ENV production bundle exec puma C
  • Ruby gem 环境问题 - LoadError: no such file to load -- robots

    我正在尝试使用 anemone gem 编写一个爬虫 这需要 robots gem 不管出于什么原因 机器人绝对不会包括在内 这是我的一些环境信息 gem list d robots LOCAL GEMS robots 0 10 1 Aut
  • 如何以 Rails 形式将图像从 上传到具有 Rails Active Storage 的 S3?

    正如标题中所述 我正在尝试使用 Rails 的 Active Storage 从嵌套在 Rails 表单中的元素将图像上传到我的 S3 存储桶 到目前为止我已经能够使用使用 Active Storage 上传图像 这User class h

随机推荐

  • 在 prolog 中表示线性函数

    我想编写复合项来表示 Y a b X 形式的总体中不同变量之间的线性关系 例如 对于由汽车组成的总体 燃料消耗 2 3 距离 我在声明该关系与人口 群体 有关时遇到问题 同时声明每个变量的值在对象内链接 即汽车 A 的燃油消耗是 2 3 汽
  • PySimpleGui:如何在文本框中输入文本?

    我正在通过参考教程来学习 PySimpleGui Link 1 https pysimplegui readthedocs io en latest tutorial and Link 2 https pysimplegui readthe
  • collectionView cellForItemAt 未被调用

    我有一个UITableView其中每个原型电池都有一个UICollectionView在里面 该集合视图应该是图像网格 我对 Swift 很陌生 已经在 google 上搜索了几个小时 并阅读了大量 StackOverflow 文章 但似乎
  • 枚举拳击和平等

    为什么这会返回 False public enum Directions Up Down Left Right static void Main string args bool matches IsOneOf Directions Rig
  • 如何使用 jQuery 解开所有父项?

    p span a href link a span p 我该如何打开一切 只留下 a href link a edit 抱歉 我应该提供更多信息 基本上 我试图瞄准所有a那是唯一的孩子span的周围是p标签 我希望以下内容能够解决问题 但它
  • BaseX REST API:设置自定义 HTTP 响应标头

    我想将以下 HTTP 标头包含到所有响应中BaseX REST API http docs basex org wiki REST Access Control Allow Origin 这可能吗 BaseX 在底层使用 Jetty 您可以
  • 如何向 java.sql.date 添加天数?

    这是我的程序 我尝试过 java sql Date logicalDate Calendar c Calendar getInstance c setTime logicalDate c add Calendar DATE 1 下面的行显示
  • Cakephp - 使用身份验证时在控制器中获取用户 ID

    这似乎是一个两步的过程 u this gt Auth gt user uid u User id 用户登录后是否会在某处设置变量 您可以使用 uid this gt Auth gt user id 查看api文档 https api cak
  • 如何测试两个移动的二维边界框的碰撞?

    OBB 具有位置 x y 速度 x y 和方向 矩阵 在定期更新的情况下 OBB 必须相互碰撞 返回被认为成功的移动部分 我查看了 GPWiki 上的多边形测试 http gpwiki org index php Polygon Colli
  • GWT 和 OSGi 集成问题

    我在将 GWT 集成到 OSGi Equinox 容器中时遇到问题 入口点网页运行 我看到我的第一页 但是 当我点击按钮实现服务器调用时 它没有运行 我使用 Firefox 并且有 firebug 然后 当我看到网络字段时 我收到下一条消息
  • 在 python-fastApi 中间件中引发异常

    我正在尝试验证 fastapi 中间件中的令牌 但这似乎不可能 我认为中间件需要进行下一次调用 尽管这不是必需的 我无法在这个 python fastapi 后端找到任何好的解决方案来一次性处理令牌 任何帮助表示赞赏 app middlew
  • 没有自动提交的 Git 合并

    是否可以做一个git merge 但没有提交 man git merge 是这样说的 With no commit perform the merge but pretend the merge failed and do not auto
  • NSOperationQueue 随机暂停?

    我有一个大量使用 NSOperationQueue 的应用程序 有时我注意到一些 NSOperationQueues 会 锁定 或随机进入 isSuspished 状态 即使我的代码从未调用 setSuspished 方法 这是不可能复制的
  • 构建向导的好模式?

    我通常使用一个TabControl并以某种方式隐藏选项卡并浏览它们 我很好奇这样做的其他方法 你可以使用一个集合Panel http msdn microsoft com en us library system windows contr
  • 如何手动更改 ggplot2 中图例中的关键标签

    我正在准备要出版的情节 我创建了一个堆积箱形图来显示每组中患有血清阴性病例复杂积累的患者与非血清阴性患者的频率 图例使用数据框中的标签 这些标签适合我们正在从事该项目的人 但不适合发布 我想将这些名称更改为读者更容易理解的名称 例如运行以下
  • 停止 HttpURLConnection 中的静默重试

    我在用着HttpURLConnection on 安卓奇巧将一些数据发布到服务器 服务器需要很长时间才能响应 并且连接在超时之前会静默重试 1 到 3 次 我不希望它重试 因为服务器会对所有请求执行操作 从而导致 Bad Things TM
  • Javascript滚动到div id [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 编辑问题以包括期望的行为 特定问题或错误以及重现问题所需的最短代码 help minimal reproducible example 这
  • Hystrix 仪表板始终显示加载屏幕

    我使用 Netflix OSS 库开发了微服务应用程序 我在 localhost 9091 hystrix 上运行的 Hystrix 仪表板上遇到问题 我想监控微服务A和微服务B之间的请求指标 端点 hystrix stream 已注册 h
  • 我得到了错误的客户端 IP 地址

    我正在运行 ASP NET 应用程序 Web 服务器位于同一系统上 在后面的代码中我只想获取请求客户端的IP地址 我正在使用这段代码 Request UserHostAddress 但我得到了一个错误的地址 127 0 0 1 我的系统IP
  • Rails own_to 关联(带有 :class_name)返回 nil

    我对 Rails 开发比较陌生 并且遇到了一个小的关联问题 我想将一个关联命名为与其所链接的模型不同的名称 我有以下2个型号 class User lt ActiveRecord Base has many events end class