gpt4 book ai didi

ruby-on-rails - 在 Rails 控制台中运行脚本并有权访问创建的对象?

转载 作者:行者123 更新时间:2023-12-04 02:02:14 24 4
gpt4 key购买 nike

我最近发现您可以使用 load 或 require 在 Rails 控制台中运行任意 Ruby 文件,如下所示:

load 'test_code.rb'

就目前而言,这很棒,但是使用 load 或 require (有什么区别?)我似乎无法访问脚本完成后在脚本中创建的对象。

例如,在我的脚本中,我可能有以下内容:
u = User.where('last_name = ?', 'Spock').first

如果我启动 rails 控制台并使用 load 或 require 运行该脚本,我会看到它正在运行,我会看到查询发生,并且我可以将来自脚本中的对象的属性“放入”并在控制台输出中查看它们。但是一旦脚本完成,变量 u 是未定义的。

我想运行一些代码来设置一些对象,然后以交互方式探索它们。这能做到吗?我做错了什么还是遗漏了一些明显的东西?

最佳答案

加载文件后,脚本中定义的变量将超出范围。如果要在控制台中使用变量,请将它们定义为实例变量或常量

@u = User.where('last_name = ?', 'Spock').first


USER = User.where('last_name = ?', 'Spock').first

关于ruby-on-rails - 在 Rails 控制台中运行脚本并有权访问创建的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21384883/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com