草庐IT

启动多任务排序

全部标签

ruby-on-rails - 如何让 Rake 任务在我的 Sinantra 应用程序/环境下运行?

我正在使用Sinatra,我想设置Rails具有的一些方便的rake任务,特别是rakedb:seed。我的第一遍是这样的:namespace:dbdodesc'Loadtheseeddatafromdb/seeds.rb'task:seeddoseed_file=File.join(File.dirname(__FILE__),'db','seeds.rb')system("rackshracksh是一个模仿Rails控制台的gem。所以我只是将种子文件中的代码直接输入其中。它有效,但显然并不理想。我想做的是创建一个环境任务,允许命令在Sinanta应用程序/环境下运行,如下所示:t

ruby - ruby 的排序方法是怎么回事?

以下代码中'a'和'b'分别代表什么,又是如何表示的?工作?list=[1,2,3,4,5]list.sort{|a,b|ba}#=>[5,4,3,2,1] 最佳答案 a和b代表一对元素。它可以是从您的原始列表中取出的任意两个。通常被称为宇宙飞船运算符(operator)。如果两项相等,则返回0,如果左边一项较小,则返回-1,如果右边一项较小,则返回1。有关thespaceshipoperatorintheRubyAPIdocs的更多信息.这是Fixnum上的文档,因为那是您的示例中的内容,但您也可以在那里查看Float、Strin

css - sass --watch 在初始启动后不更新 (sass 3.1.16)

我正在使用sass为我正在开发的一个简单的静态网站编写css。我运行了sass--watchcustom.scss:custom.css,它在启动时编译良好,并显示消息:Sassiswatchingforchanges.PressCtrl-Ctostop.overwritecustom.css但是,每当我更新.scss文件时,什么也没有发生。我以前没有在Rails应用程序的上下文之外使用过SASS,所以我想知道我是否遗漏了什么?我的scss文件也非常简单,所以我怀疑它有什么问题,特别是因为它在第一次运行时就可以工作。sass-v报告Sass3.1.16(BrainyBetty),在Li

ruby - rake 将参数传递给相关任务

这是我目前运行rak相关任务的方式task:test=>[:prepare_testdir,:run_tests]目前这两个依赖任务没有参数。但是我需要向其中一项任务添加参数。它应该像在命令行上一样运行rakeprepare_testdir[mydir]我如何将这个新参数传递给这个task:test=>[:prepare_testdir,:run_tests]我试过了task:test=>[:prepare_testdir[mydir],:run_tests]和task:test=>[:prepare_testdir['mydir'],:run_tests]两者都不工作。提前致谢

ruby - Capistrano 检查任务中 undefined variable

在使用多阶段扩展的Capistrano中,我有两个环境:生产和测试。我在testing.rb中需要一些在prod.rb中不需要的变量,我希望我的一些任务能够检查变量是否已定义并在定义时使用它,但在定义时忽略它未设置。所以,在testing.rb中,我会有类似的东西:set:foo,'bar'prod.rb不会引用:foo因为它不需要它。在我的一项任务中,我想做类似的事情:ifdefined?(foo)#dosomethingwithfooelse#dosomethingwithoutfooend但我一直收到错误:undefinedlocalvariableormethod'foo'有没

ruby - 任务依赖性是否总是以特定顺序与 rake 一起运行?

我有以下示例,它基于我希望我的rakefile使用的结构:task:defaultdoputs'Tasksyoucanrun:dev,stage,prod'endtask:dev=>[:init,:devrun,:clean]task:devrundoputs'Devstuff'endtask:stage=>[:init,:stagerun,:clean]task:stagerundoputs'Stagingstuff'endtask:prod=>[:init,:prodrun,:clean]task:prodrundoputs'Productionstuff'endtask:init

ruby-on-rails - 如何在 Rails 中按字母顺序对电影进行排序?

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭9年前。Improvethisquestion如果您访问http://ccvideofinder.heroku.com/,这是我所指的一个很好的例子。这在Rails中如何实现?我在想也许可以使用case/when语句,但在与IRB混了一段时间后我无法弄清楚。在模型中:classMovies['titleLIKE?',"#{letter}%"],:order=>'titleASC')endend在Controller中:@result=Movi

ruby - 如何从 ruby​​ 脚本并行启动多个 rake

我有一个ruby​​脚本,我想从中启动4个并行运行的rake任务。我该怎么做?我想我需要fork并分离一个进程,但我需要确切的语法。 最佳答案 最好让Rake处理并行性。您可以使用“多任务”来做到这一点。在Rakefile中:desc"Starteverything."multitask:start=>['mongodb:start','haystack:start']Backgroundandsource.否则,假设您是从Rakefile外部执行此操作,您可以使用像这样的可怕代码,它不会像您预期的那样抛出异常,并且很容易以多种方式

ruby - 重现随机数组排序

我有一个对象数组,我想对其进行随机排序。对于这种情况,我可以使用array.shuffle。但是,如果我想稍后在同一个数组上重现该顺序怎么办?有什么方法可以提供种子、随机数等等,以便我以后可以重现这个序列吗?我想从MongoDB数据库(使用MongoID)生成一个随机的对象列表,并且该列表必须在以后复制。但据我所知,没有真正好的方法,直接在MongoDB中实现随机排序。可能有很多对象(>1,000,000),但计算时间是第一次尝试的时间,并不是最重要的事实。 最佳答案 如果您查看RubydocsforArray#shuffle你会看

ruby - 使用 bsearch 查找用于将新元素插入排序数组的索引

我有一个已排序的唯一数组,我想高效地向其中插入一个不在数组中的元素,如下所示:a=[1,2,4,5,6]new_elm=3insert_at=a.bsearch_index{|x|x>new_elm}#=>2a.insert(insert_at,new_elm)#nowa=[1,2,3,4,5,6]方法bsearch_index不存在:只有bsearch,它返回匹配元素而不是匹配元素的索引。是否有任何内置方法可以实现此目的? 最佳答案 您可以使用each_with_index返回的Enumerator对象返回一个嵌套的[value,