Rails 3.1 引擎:如何调用 /scripts 中的脚本

发布于 2024-12-12 00:49:04 字数 240 浏览 0 评论 0原文

我正在将 Rails 应用程序重构为引擎。该应用程序依赖于 /script 中的 python 脚本,我想将其包含在引擎中。

原始应用代码是:

system("python #{Rails.root}/script/big_calculation.py") 

这个脚本在新引擎中应该存储在哪里?我将如何重写上面的代码行以反映这个新位置?

谢谢杰克

I'm refactoring a Rails app into an engine. The app relies on a python script in /script which I want to include with the engine.

The original app code is:

system("python #{Rails.root}/script/big_calculation.py") 

Where should this script be stored in the new engine? How will I rewrite the above line of code to reflect this new location?

Thanks

Jack

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

樱娆 2024-12-19 00:49:04

引擎中没有 Rails.root 本身。但是您可以通过在引擎中定义一个常量来创建一个常量,如下所示:

module YourThing
  class Engine
    def self.root
      File.expand_path("../..")
    end
  end
end

然后使用 YourThing::Engine.root 调用它。

There isn't a Rails.root per sé in the engine. But you could make one by defining a constant in your engine like this:

module YourThing
  class Engine
    def self.root
      File.expand_path("../..")
    end
  end
end

Then you call it using YourThing::Engine.root.

木槿暧夏七纪年 2024-12-19 00:49:04

结果你

MyEngine::Engine.root

已经可以打电话了。

Turns out you can just call

MyEngine::Engine.root

already.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文