Tag: 耙子

如何防止Rake测试调用任务db:test:prepare

每次我想运行Rake测试时,任务db:test:prepare被调用,它从schema.rb和迁移重建我的测试环境数据库。 我想要实现的是禁用db:test的调用:当我想测试make Rails应用程序时准备。 是否可以不修改Rails gem?

在迁移中指定自定义主键

我有一个数据结构: t.integer :userID t.string :apikey t.integer :characterID userID应该是主键(名称不重要,它可以默认为:id )。 但是,我不希望它是自动递增或其他任何东西,只需获取提供的值并将其写入数据库。 我如何调整迁移和模型以实现我想要的?

Rake NoMethodError:未定义的方法’scan’for Lexicon:Class

我收到NoMethodError:当我尝试使用以下RakeFile运行rake测试时,Lexicon:Class的未定义方法’scan’ 。 require ‘./lib/ex48/lexicon.rb’ require ‘test/unit’ class TestLexicon < Test::Unit::TestCase def test_directions assert_equal(Lexicon.scan('north'), [%w(direction north)]) end end 我有一个简单的Lexicon类: class Lexicon def initialize @direction = %w(north south east west down up left right back) @verbs = %w(go stop kill eat) @stop_words = %w(the in of from at it) @nouns = %w(door bear princess cabinet) @numbers = […]

ActiveRecord属性消失的情况

按照https://stackoverflow.com/a/24496452/102675中的说明,我结束了以下内容: namespace :db do desc ‘Drop, create, migrate, seed and populate sample data’ task seed_sample_data: [:drop, :create, :migrate, :seed, :populate_sample_data] do puts ‘Sample Data Populated. Ready to go!’ end desc ‘Populate the database with sample data’ task populate_sample_data: :environment do puts Inspector.column_names.include?(‘how_to_fix’) # create my sample data end end 正如您所料,如果我运行bundle exec rake db:populate_sample_data ,我就会成功 但是如果我运行bundle […]

rake db:seed期间的问题,值没有正确设置

我想用app / db中的seeds.rb文件预填充我的表 但是在存储正确的数据时我遇到了问题。 在表用户中,我有一个名为active的列,数据类型为tinyint。 所以现在我想用seeds.rb int值存储 User.create([ { :id => 1, :firstname => ‘Felix’, :lastname => ‘Hohlwegler’, :active => 1}]) 但它不存储1.它总是在数据库中存储0。 也试过这个: User.create([ { :id => 1, :firstname => ‘Felix’, :lastname => ‘Hohlwegler’, :active => true}]) 同样的问题它在db中存储0。 什么出错了?

我如何拥有:默认Rake任务取决于带参数的任务?

我一直在玩Rake和Albacore,看看我是否可以替换现有的MSBuild脚本,该脚本使用非XML的软件来部署软件。 我有一个任务,将web.config的调试值更改为false 。 该任务将web.config的目录作为参数,但我无法弄清楚在默认任务中提供此参数所需的语法。 require ‘albacore’ require ‘nokogiri’ deployment_path = ‘c:/test-mars-deploy’ task :default => [ :build, :publish, :update_web_config[‘c:/test-mars-deploy’] ] task :update_web_config, :deploy_path do |t, args| deployment_path = #{args[:deploy_path]} web_config_path = File.join deployment_path, ‘Web.config’ File.open(web_config_path, ‘r+’) do |f| doc = Nokogiri::XML(f) puts ‘finding attribute’ attribute = doc.xpath(‘/configuration/system.web/compilation’) attribute.attr(‘debug’, ‘false’) puts attribute.to_xml end File.delete(web_config_path) File.new(web_config_path, ‘w’) do […]

Rake执行多个参数

我在一个任务中调用一个rake任务,当涉及到调用execute时,我遇到了障碍 response = Rake::Task[“stuff:sample”].execute[:match => “HELLO”] 要么 response = Rake::Task[“stuff:sample”].execute[:match => “HELLO”,:freq=>’100′] 调用任务 task :sample, [:match,:freq] => :environment do |t, args| 我得到的错误是“无法将Hash转换为整数” 有任何想法吗?

为什么这需要从rake中失败但在明确运行时成功?

帮助我理解为什么这个项目的测试在直接执行时运行但在通过rake运行时不运行。 通过Rake TestTask运行时的错误: ** Execute test /home/myockey/.rvm/rubies/ruby-1.9.2-p136/bin/ruby -I”lib:test” “/home/myockey/.rvm/gems/ruby-1.9.2-p136/gems/rake-0.8.7/lib/rake/rake_test_loader.rb” “test/unit/data_test.rb” “test/unit/station_test.rb” “test/unit/raw_test.rb” “test/unit/parser_test.rb” “test/unit/report_test.rb” :29:in `require’: no such file to load — test/unit/../metar_test_helper.rb (LoadError) from :29:in `require’ from test/unit/data_test.rb:4:in `’ from /home/myockey/.rvm/gems/ruby-1.9.2-p136/gems/rake-0.8.7/lib/rake/rake_test_loader.rb:5:in `load’ from /home/myockey/.rvm/gems/ruby-1.9.2-p136/gems/rake-0.8.7/lib/rake/rake_test_loader.rb:5:in `block in ‘ from /home/myockey/.rvm/gems/ruby-1.9.2-p136/gems/rake-0.8.7/lib/rake/rake_test_loader.rb:5:in `each’ from /home/myockey/.rvm/gems/ruby-1.9.2-p136/gems/rake-0.8.7/lib/rake/rake_test_loader.rb:5:in `’ rake aborted! 当我直接运行脚本时,我得到以下内容: myockey@myockey-K61IC:~/opt/joeyates-metar-parser-cdca19f/test/unit$ ruby data_test.rb Loaded suite data_test Started …………………………………………… […]

rails secret_key_base未在生产中被识别

所以我正在尝试在生产中部署我的rails应用程序。 当我进入页面时,我收到500错误。 当我转到我的错误日志时,我收到以下错误: Exception RuntimeError in Rack application object (Missing `secret_key_base` for ‘production’ environment, set this value in `config/secrets.yml`) 我正在运行Rails 4.1,我的config / secrets.yml看起来像这样: development: secret_key_base: test: secret_key_base: # Do not keep production secrets in the repository, # instead read values from the environment. production: secret_key_base: 我运行rake secret获取密钥并将导出放入我的bash_profile并获取它。 我运行了rake资产:预编译成功。 但我仍然一直在犯这个错误。 有任何想法吗? 更新:我试图更新提供的错误消息,以提供更好的信息….并且消息没有更新。 然后,我尝试将密钥直接添加到yml文件,而不是使用环境变量,仍然没有骰子。 我在hostmonster上运行,所以我无法重新启动服务器…..但有些东西告诉我需要做什么… 更新2:彻夜难眠后,似乎这个问题不再是问题。 它一定是某种缓存。 […]

如何修补Rails附带的rake任务?

我刚刚发现了Rails附带的一个rake任务中的一个错误。 有没有办法修补rake任务?