Rake db: erro de migração "não sei como criar tarefas"
Eu tenho uma tabela onde eu usei inteiro em um campo que precisa de casas decimais, então estou tentando criar uma migração que altera o tipo de campo de inteiro para float / real. Meu banco de dados é sqllite3 e estou usando o rails3.
Eu corri
rails generate migration ChangeMeasureColumnOnIngredients
para criar os arquivos de migração iniciais e atualize a classe para
class ChangeMeasureColumnOnIngredients < ActiveRecord::Migration def self.up change_column :ingredients, :measure, :real end
Corri rake db: migrate e ele retornou bem.
Quando inseri um valor no meu aplicativo rails, ele não retornou a casa decimal. Comecei a pensar que muitos trilhos não sabem o que é 'real' como um tipo de dados, então mudei a migração para
change_column :ingredients, :measure, :float
Então eu corri
rake db:migrate change_measure_column_on_ingredientse agora eu recebo o seguinte erro
c:\Ruby192\rails3rc>rake db:migrate change_measure_column_on_ingredients (in c:/Ruby192/rails3rc) rake aborted! Don't know how to build task 'change_measure_column_on_ingredients' C:/Ruby192/lib/ruby/1.9.1/rake.rb:1720:in[]' C:/Ruby192/lib/ruby/1.9.1/rake.rb:2040:in
invoke_task' C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:inblock (2 levels) in top_level' C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:in
each' C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:inblock in top_level' C:/Ruby192/lib/ruby/1.9.1/rake.rb:2058:in
standard_exception_handling' C:/Ruby192/lib/ruby/1.9.1/rake.rb:2013:intop_level' C:/Ruby192/lib/ruby/1.9.1/rake.rb:1992:in
run' C:/Ruby192/bin/rake:31:in `'
Tentei alterar o: float de volta para: real, mas ainda recebo esse erro.
alguém pode me dizer o que estou fazendo de errado? Eu sou novo em trilhos e ainda estou aprendendo.