对“respond_to”与“respond_to”感到困惑吗?

2024-04-07

我正在通过railstutorial.org学习Rails,但我对一些事情感到困惑: 在本章 http://ruby.railstutorial.org/chapters/modeling-and-viewing-users-two#sec:password_migration作者告诉我们在控制台中进行一些测试respond_to?User 对象上的方法,它工作正常。但后来,当我们为:encrypted_password属性,他使用respond_to.

出于好奇,我尝试了respond_to在控制台中,对于 User 对象,我收到一条错误消息,指出该方法不存在。唉,如果我尝试使用编写测试respond_to?代替respond_to,测试不运行。

有人可以向我解释一下区别吗?为什么测试只运行respond_to?


红宝石款待? and !作为方法名称中的实际字符。respond_to and respond_to?是不同的。?表明这should回答正确或错误(按照惯例;这不是必需的)。具体来说:

respond_to? is a Ruby method http://ruby-doc.org/core/Object.html#method-i-respond_to-3F用于检测该类是否具有特定方法。例如,

@user.respond_to?('eat_food')

将返回 true 如果User类有一个eat_food方法就可以了。

respond_to is a Rails method http://apidock.com/rails/ActionController/MimeResponds/respond_to用于响应特定的请求类型。例如:

def index
  @people = Person.find(:all)

  respond_to do |format|
    format.html
    format.xml { render :xml => @people.to_xml }
  end
end

但是,在您提供的 RailsTutorial 链接中,您会看到RSpec method should与 RSpec 交互respond_to http://rubydoc.info/gems/rspec-expectations/2.4.0/RSpec/Matchers#respond_to-instance_method方法。除非您运行,否则这在您的控制台中不可用rails console test.

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

对“respond_to”与“respond_to”感到困惑吗? 的相关文章

随机推荐

  • addEventListener 仅在页面刷新时工作?

    我正在修改两个下拉列表的外观 这里没有问题 一切都很好 唯一的问题是addEventListener该方法仅在页面刷新时有效 如何使此代码在页面加载时工作而无需点击刷新按钮 window addEventListener load func
  • 输入中每 4 个字符后插入破折号

    我想在输入中每四个字符后插入一个破折号 我有一个信用卡输入框 当用户输入并到达每个第 4 个字符时 jQuery 将插入一个连字符 例如 1234 5678 1234 1231 UPDATE 我正在尝试一些代码 我认为我非常接近正确的代码
  • 具有模糊轮廓的单张多边形

    我正在寻找一种方法来获得传单多边形的模糊 模糊 渐变轮廓 这应该有助于使国家 地区轮廓更加简单 目前 当您放大代表国家 地区的 svg 时 它会变得丑陋 不准确 我正在考虑将 CSS 属性附加到 svg 上 类似于这样 http www w
  • 计算组平均值,同时排除每个案例的个体值

    我有一个包含 70 个案例 研究参与者 的数据集 是否有一个函数可以计算这 70 个案例的平均值 以便分析中不包含每个单独的案例 这看起来像 mean for case x value 1 value n value x n 任何信息都会有
  • CSS 100% 宽度,每 20px 步长

    是否可以在纯CSS中设置一些宽度变化的步骤 假设我的 div 宽度为 100 所以当容器为 30px 时 它的宽度将为 30px 但是是否可以将一些 跳跃 设置为 20px 这样当容器为 30px 时 它仍然是 20px 但是当容器为 40
  • 使用 EaselJS 的无限画布

    有没有办法用 EaselJS 显示无限画布 我已经阅读了使用 Javascript 或 JQuery 执行此操作的方法 但是有什么方法可以使用 EaselJS 进行管理吗 Thanks 您可以使用 JavaScript jQuery 拖放画
  • Meteor 登录服务未配置

    我正在使用 Meteor loginWithFacebook 来让用户访问我的应用程序 代码是 Meteor loginWithFacebook loginStyle redirect function err if err throw e
  • 简单的倒计时器打字稿

    我的构造函数中有以下代码 constructor for let i 0 i lt 90 i setTimeout gt this counter this counter 1 1000 我真正想要的是显示一个倒计时 90 秒的数字 现在它
  • 如何在 UML 活动图上显示异步操作

    我即将绘制 记录一些客户端 服务器连接建立代码 以更好地理解它 有几个操作是在单独的线程中异步完成的 连接线程 数据接收线程等 我应该在单独的图表上显示它们吗 我更愿意将其放在单个图表上以掌握整体视图 但不知道如何在活动图上表示它 我不确定
  • 如何将本地 html 文件加载到 NativeScript webview 中

    我修改了 webpack config js 以添加一个名为 index html 的本地文件 代码如下 new CopyWebpackPlugin from glob index html from glob fonts from glo
  • AWS Cognito 托管 UI 在 URL 中返回 id_token

    我正在使用 AWS Cognito 的托管 UI 进行用户登录 id 令牌作为 URL 的一部分返回 如中所述https docs aws amazon com cognito latest developerguide cognito u
  • 实体框架中添加的多个实体可能具有相同的主键

    我正在使用 EF 4 0 的项目中工作 The Employee表有一列ReferEmployeeID其中包含在系统中引用新员工的员工的员工 ID 所以Employee是一个自引用表 现在 如果一个未添加到系统中的员工要添加 并且他还引用了
  • 如何抑制命令的错误消息?

    如何抑制 shell 命令的错误消息 例如 如果只有jpg目录中的文件 正在运行ls zip给出错误消息 ls zip ls cannot access zip No such file or directory 是否有一个选项可以抑制此类
  • 根据另一个列表从列表中过滤元素[重复]

    这个问题在这里已经有答案了 我想在Java 8 我有一个Boolean清单和另一个Object列表 这两个列表的大小始终相同 我想从中删除所有元素object列表 其中有false在相应的索引处boolean list 我将尝试用一个例子来
  • WPF datagrid 选定行单击事件?

    我想在双击 WPF DataGrid 的选定行时执行一些代码 我知道数据网格有一个 MouseDoubleClicked 事件 并且它还有一个行选定事件 但我没有看到任何 选定行双击 事件 您认为有可能以某种方式捕捉到这一事件吗 您可以在中
  • ModuleNotFoundError:没有名为“MySQLdb”的模块

    在完成我的一个 Flask 项目后 我像其他人一样将其上传到 github 上 2 3 个月后 我将整个 githube 存储库下载到另一台机器上来运行它 但是 该应用程序无法运行 因为找不到软件包 并显示以下消息 ModuleNotFou
  • 未找到 Hadoop 命令

    我已经在 Linux 机器上安装并配置了 hadoop 现在我正在尝试运行示例 MR 作业 我已经通过命令 usr local hadoop bin start all sh 启动了 hadoop 输出为 namenode running
  • 如何使用 c# excel interop 读取 excel 自定义文档属性

    我正在尝试检查是否已为 Excel 文件设置自定义文档属性 如果设置了则读取该值 这是我正在使用的代码 但到目前为止还没有运气 它不会进入 foreach 循环并出来 var propval ReadDocumentProperty Tes
  • OpenGL:重复使用具有不同参数的相同纹理

    在我的程序中 我有一个纹理 它在不同情况下使用多次 在每种情况下 我都需要应用一组特定的参数 我想避免创建额外的缓冲区 并在每次需要将其用于其他用途时实质上创建纹理的副本 所以我想知道是否有更好的方法 这是什么采样器对象 http www
  • 对“respond_to”与“respond_to”感到困惑吗?

    我正在通过railstutorial org学习Rails 但我对一些事情感到困惑 在本章 http ruby railstutorial org chapters modeling and viewing users two sec pa