私は自分のアプリケーションにレーキタスクを作成しましたが、今はそのタスクをメニューのリンクからアプリケーションユーザーにアピールできるようにしたいのですが、そこから呼び出す方法はわかりません。このようなもの...?Rails 3 link_to rakeタスク
<%= link_to t('backup'), Rake::Task['backup'].invoke %>
私は自分のアプリケーションにレーキタスクを作成しましたが、今はそのタスクをメニューのリンクからアプリケーションユーザーにアピールできるようにしたいのですが、そこから呼び出す方法はわかりません。このようなもの...?Rails 3 link_to rakeタスク
<%= link_to t('backup'), Rake::Task['backup'].invoke %>
あなたはできません。 Link_toは何か静的またはコントローラのアクションにリンクできます。そこで、Rake Taskを起動できるアクションを作成する必要があります。
class MyTasksController < ApplicationController
def rake_it
Rake::Task['backup'].invoke
end
end
<%= link_to t("backup"), {:controller => :my_tasks", :action => "rake_it"}
あなたが言ったように、私がしようとしたが、次のエラーが表示されます。
NameError (uninitialized constant MyTasksController::Rake)
編集答え:
を、私は最終的にこの方法でそれを行うことができます:
class MyTasksController < ApplicationController
def rake_it
system ('rake backup:db:mysql')
redirect_to :action => 'index', :controller => '/events'
end
end
あなたがかもしれませんあなたのコントローラーに 'Rake'を押し込む必要がありますか? – andrewdotnich