我在我的rails应用程序中编写了rake任务,以获取来自其他网站的产品列表的信息。 我想添加功能以单击我的产品页面上的一个按钮,该按钮将运行rake任务并更新。到目前为止,我已经向我的ProductsController添加了一个动作:
def get_info
system "rake fetch_prices &"
flash[:notice] = "Fetching info for Products"
redirect_to index_url
end
然后我的索引视图有:
<%= link_to "Get info", my_rake_task_path, :method => 'put' %>
至于路线,我很难过。根据我补充的其他教程:
put 'rake_task' to: 'productscontroller#get_info' :as 'my_rake_task'
然后,当我尝试启动服务器时,路由文件中出现错误。
答案 0 :(得分:6)
Rake::Task['task_name'].invoke