Rails 控制台停止输出任何文本

Posted

技术标签:

【中文标题】Rails 控制台停止输出任何文本【英文标题】:Rails console stops to output any text 【发布时间】:2021-04-21 06:28:00 【问题描述】:

我有一个 Rails 应用程序,我在 bin/rails console 中执行一些查询。

现在,当我正在执行查询以输出一些数据时,突然停止显示输出。

然后我可以为一个变量分配一个给定的值,并且输入该变量不会输出我刚刚分配的值:

irb(main):001:0> Card.all.each do |c| print("#c.full_name: #c.id/#c.first_name-#c._lastname")  
irb(main):004:2> x = _
irb(main):005:2> x
irb(main):006:2> x = 3 
irb(main):007:2> x # I would assume to see the value '3'
irb(main):009:3> print("hello") # I would assume to see "hello" on the screen
irb(main):010:3> 

【问题讨论】:

【参考方案1】:

这通常是由于悬空语法而发生的。在您的情况下,您使用 both do ... end ... ,特别是省略了 end

IRB 解析器将继续接收输入,直到您输入 end,然后它才会运行和/或发出错误。

解决方法是删除do

你想要任何一个

Card.all.each do |c|
  ...
end

或者内联样式:

Card.all.each  |c| ... 

【讨论】:

以上是关于Rails 控制台停止输出任何文本的主要内容,如果未能解决你的问题,请参考以下文章