0

我一直在尝试使用 import 'file.rake' 将 .rake 文件导入我的控制器,但我似乎收到一条错误消息,提示 Main:object 的未定义方法 'import'。我试图在网上查找有关如何使用导入的任何文档,但我找不到任何东西。有没有人有解决方案或以前遇到过这个错误?

提前致谢。

4

2 回答 2

0

我认为您可能会以错误的方式解决此问题。为什么 Rakefile 中有这个功能?

Rake 相当于 Ruby make- 它旨在处理具有依赖关系的软件任务,例如构建应用程序或打包发布 Rubygem。甚至Wikipedia也对它的用途有很好的描述,或者查看链接转储的答案

你所描述的听起来像是普通的 Rails 东西——接受网络输入,采取行动,与数据库交互。我会认真考虑在 Rails 中重写你的 Rake 任务。

于 2013-06-04T09:20:03.977 回答
0

有几种方法可以在这里阅读:在控制器中运行 rake 任务

但我真的不推荐他们。如果你发现需要在你的应用程序中运行一些额外的代码,那么突破到控制台并不是解决问题的方法。将代码写入您的应用程序,可能是在一个 lib 文件中,然后调用它。

你甚至可以让你的 rake 文件调用相同的 lib 方法,这样你就可以干了。

将代码文件添加到lib文件夹,将所有逻辑放在那里

module ExtraActions
  def method_that_does_logins
    ...
  end
end

将其包含在您的控制器中:

UsersController < ApplicationController
  include ExtraActions

  def create
    ... #normal code
    method_that_does_logins
  end
end
于 2013-06-04T09:21:54.880 回答