打印ruby sinatra控制器内的任何变量
我需要输出(比如,在浏览器中显示)一个存在于Ruby sinatra控制器中的变量值:打印ruby sinatra控制器内的任何变量,ruby,sinatra,slim-lang,Ruby,Sinatra,Slim Lang,我需要输出(比如,在浏览器中显示)一个存在于Ruby sinatra控制器中的变量值: get '/endpoint' do someVariable = MyModel.All # print/output/dump someVariable value ! end 我试过放,放,打印。。。没有任何帮助。您正在寻找的简单方法就是返回一个字符串。然后,此字符串将显示在浏览器中 注意:放入、p等。在服务器日志中打印值,而不是在浏览器中打印。这也很有用,但显然不是你想要的
get '/endpoint' do
someVariable = MyModel.All
# print/output/dump someVariable value !
end
我试过
放
,放
,打印
。。。没有任何帮助。您正在寻找的简单方法就是返回一个字符串。然后,此字符串将显示在浏览器中
注意:放入
、p
等。在服务器日志中打印值,而不是在浏览器中打印。这也很有用,但显然不是你想要的
注意#1,在您的情况下,您返回的是一组对象。这不是字符串,Sinatra无法正确理解,因此您无法在浏览器中看到任何内容。一种解决方案是在将对象发送到浏览器之前序列化对象:
get '/' do
..
object.to_s # or object.to_json
end
注意#2(棘手的一个:):通过到_s
或到_json
序列化的对象可能会以这种格式结束:
#<OpenStruct name="John Doe", age=44>
您是要“打印”到浏览器还是终端?如果是浏览器,则需要呈现某种模板,在其中循环并利用
someVariable
。如果您想查看终端中的变量值,请尝试require'pp'
,然后pp someVariable
我记得用一种非常简单的方式对浏览器进行了操作。无法添加任何“require”,因为它是一个外部项目。试图用一个以上的步骤做一些非常简单的事情是非常烦人的。谢谢
get '/' do
..
content_type :txt
object.to_s # or object.to_json
end