相关疑难解决方法(0)

如何将命令行参数传递给rake任务

我有一个rake任务需要将值插入多个数据库.

我想从命令行或另一个 rake任务将此值传递给rake任务.

我怎样才能做到这一点?

ruby rake command-line command-line-arguments

1065
推荐指数
15
解决办法
33万
查看次数

rails rake任务是否可以访问ActiveRecord模型?

我正在尝试创建自定义rake任务,但似乎我无法访问我的模型.我认为这是rails任务中隐含的内容.

我在lib/tasks/test.rake中有以下代码:

namespace :test do
  task :new_task do
    puts Parent.all.inspect
  end
end
Run Code Online (Sandbox Code Playgroud)

这是我的父模型的样子:

class Parent < ActiveRecord::Base
  has_many :children
end
Run Code Online (Sandbox Code Playgroud)

这是一个非常简单的例子,但我收到以下错误:

/> rake test:new_task
(in /Users/arash/Documents/dev/soft_deletes)
rake aborted!
uninitialized constant Parent

(See full trace by running task with --trace)
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?谢谢

rake activerecord ruby-on-rails task

224
推荐指数
5
解决办法
5万
查看次数

Rake的"环境"任务是什么?

根据" 自定义佣金任务 ":

desc "Pick a random user as the winner"
task :winner => :environment do
  puts "Winner: #{pick(User).name}"
end
Run Code Online (Sandbox Code Playgroud)

据我所知,:winner => :environment意思是"做environment之前winner".但是什么environment?我应该什么时候使用它?

我试过rake -T,但在列表中我找不到environment.

rake ruby-on-rails

112
推荐指数
3
解决办法
6万
查看次数

具有多个参数和模型访问的Rake任务不起作用

运行我的rake任务时出现以下错误

rake store_reports["1", "2"]
rake aborted!
Don't know how to build task 'store_reports[1,'
Run Code Online (Sandbox Code Playgroud)

我的rake任务需要2个参数,需要访问其中的模型.这是任务

task :store_reports, [:start_date, :end_date] => :environment do |t, args|
    puts args.start_date
end
Run Code Online (Sandbox Code Playgroud)

我引用了两个stackoverflow问题,但第一个答案没有用,在第二个答案中,作者似乎已经解决了,但他从未发布过他的答案.

耙子流产了!undefined方法`map'for:name: 带有多个参数的符号rake任务 - 我卡住了

这是一些额外的信息.我跑的地方,rake -T我看不到我的佣金任务

ruby rake ruby-on-rails ruby-on-rails-3

16
推荐指数
1
解决办法
3386
查看次数