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 控制台停止输出任何文本的主要内容,如果未能解决你的问题,请参考以下文章
运行 rspec 时如何让 Rails.logger 打印到控制台/标准输出?