Tag: 耙子

我的非模型/非控制器代码应该在哪里生效?

我编写了一个跟随常规目录结构的rails应用程序(模型中的模型代码,控制器中的控制器代码)。 但我现在正在开发一个新function,为此我写了一些(我称之为)“服务”代码。 新function是将一些数据导入系统,目前它有两个类进行导入,但可以扩展到更多。 我不相信新代码属于模型,因为它没有对任何对象建模(它也不直接与任何单个对象相关。我当然不认为它属于控制器,因为它不是表示逻辑。 所以,我创建了一个“app / services”目录并将其放在那里。 我还创建了一个“测试/服务”目录,我已经进行了测试。 我认为一切都很好,但是当我运行’rake:test’或’autotest’时,我的新服务测试没有运行。 现在我希望有一种方法可以让rake拿起它们,但这是一个警告标志,我做错了什么? 代码应该存在其他地方还是我不知道“Rails方式”做什么? 通常,每当我遇到这样的问题之前,我通常都会发现rails已经有了解决方案,但我并不知道这个惯例。 这是其中一个案例吗?

按特定顺序运行RSpec任务

我定义了一堆RSpec Rake任务,当我运行整个测试套件时,我想以特定的顺序运行。 我尝试过这样的事情: task :run_in_order => [:one, :two, :three] do puts “Run suite of tests” end 它运行第一个测试然后停止并且不执行其余任务。 因此,如果使用Rake语法,它不起作用。 有没有办法记录RSpec Rake任务的任务依赖性?

Rails 3.0和Ruby 1.9.2rc:Rake命令返回’已初始化的常量’和堆栈级别太深的错误。 有任何想法吗

我正在尝试在Ubuntu 10.04上运行Rails 3 beta 4和Ruby 1.9.2rc。 它最初工作,但在完成我的第一个bundle install / package之后,我现在在所有rails项目中都遇到以下错误。 即使是基本的“rails new testproject”,然后是rake,也会显示错误消息。 简而言之,我很难过。 关于可能导致这种情况的任何帮助都将非常感激。 我注意到的唯一 – 可能相关或不相关 – 是〜/ .bundle文件中的目录是ruby / 1.9.1。 我的机器上没有安装1.9.1 – 只有1.9.2rc。 ruby -v带回1.9.2 (in /home/john/Websites/sandbox/testerino) /home/john/.bundle/ruby/1.9.1/gems/rake-0.8.7/lib/rake.rb:32: warning: already initialized constant RAKEVERSION /home/john/.bundle/ruby/1.9.1/gems/rake-0.8.7/lib/rake/alt_system.rb:32: warning: already initialized constant WINDOWS WARNING: Possible conflict with Rake extension: String#ext already exists WARNING: Possible conflict with […]

“堆栈级别太深”运行rake db:create:all

当我运行rake db:create:all ,我收到以下消息: /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake/version.rb:4: warning: already initialized constant MAJOR /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake/version.rb:5: warning: already initialized constant MINOR /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake/version.rb:6: warning: already initialized constant BUILD /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake/version.rb:3: warning: already initialized constant NUMBERS /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake/version.rb:9: warning: already initialized constant VERSION /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake.rb:26: warning: already initialized constant RAKEVERSION /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake/early_time.rb:17: warning: already initialized constant EARLY /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake/alt_system.rb:32: warning: already initialized constant WINDOWS /Users/junior/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2/lib/rake/application.rb:28: warning: already initialized […]