cant rake db: перенести неопределенный метод erorr - PullRequest
0 голосов
/ 18 октября 2019

Привет, ребята. Я новичок в рельсах и только начинаю. Каждый раз, когда я пытаюсь запустить rake db: migrate, я получаю следующее (трассировку):

rake db:migrate
==  CreateModelNames: migrating ===============================================
-- create_table(:model_names)
rake aborted!
StandardError: An error has occurred, all later migrations canceled:

undefined method `feldtyp' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x7f729807cfa8>./db/migrate//20191018075455_create_model_names.rb:4:in `up_without_benchmarks'
./db/migrate//20191018075455_create_model_names.rb:3:in `up_without_benchmarks'
(__DELEGATION__):2:in `__send__'
(__DELEGATION__):2:in `migrate'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
david@david-desktop:~/Railsprojekte/david$ rake db:migrate --trace** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:migrate
==  CreateModelNames: migrating ===============================================
-- create_table(:model_names)
rake aborted!
StandardError: An error has occurred, all later migrations canceled:

undefined method `feldtyp' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x7f61a32f62f8>./db/migrate//20191018075455_create_model_names.rb:4:in `up_without_benchmarks'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/connection_adapters/abstract/schema_statements.rb:104:in `create_table'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/connection_adapters/mysql_adapter.rb:445:in `create_table'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:346:in `send'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:346:in `method_missing'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:326:in `say_with_time'
/usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:326:in `say_with_time'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:342:in `method_missing'
./db/migrate//20191018075455_create_model_names.rb:3:in `up_without_benchmarks'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:280:in `send'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:280:in `migrate'
/usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:280:in `migrate'
(__DELEGATION__):2:in `__send__'
(__DELEGATION__):2:in `migrate'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:480:in `migrate'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:556:in `call'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:556:in `ddl_transaction'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:479:in `migrate'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:466:in `each'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:466:in `migrate'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:394:in `up'
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/migration.rb:377:in `migrate'
/usr/local/lib/ruby/gems/1.8/gems/rails-2.2.2/lib/tasks/databases.rake:111
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:240:in `call'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:240:in `execute'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:235:in `each'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:235:in `execute'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:179:in `invoke_with_call_chain'
/usr/local/lib/ruby/1.8/monitor.rb:242:in `synchronize'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:172:in `invoke_with_call_chain'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/task.rb:165:in `invoke'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:150:in `invoke_task'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:106:in `top_level'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:106:in `each'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:106:in `top_level'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:115:in `run_with_threads'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:100:in `top_level'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:78:in `run'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:176:in `standard_exception_handling'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/lib/rake/application.rb:75:in `run'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.4.2/bin/rake:33
/usr/local/bin/rake:26:in `load'
/usr/local/bin/rake:26
Tasks: TOP => db:migrate

Мой код такой:

class CreateModelNames < ActiveRecord::Migration
  def self.up
    create_table :model_names do |t|
      t.feldtyp :feld_name

      t.timestamps
    end
  end

  def self.down
    drop_table :model_names
  end
end

Любая помощь будет иметь приоритет:)

LG

Ответы [ 2 ]

1 голос
/ 18 октября 2019

Ошибка говорит о том, что feldtype не известный метод, когда я смотрю на вашу миграцию, она выглядит очень странно, не уверен, что это за язык, но кажется, что это теоретическое описание миграции (напишите тип поля, затемимя-поля)

Заменить feldtype фактическим типом столбца базы данных. Например, напишите

t.string :feld_name

(и если feld_name не имеет идеального значения для вашего примера, используйте что-то более осмысленное / подходящее / выразительное, но это, конечно, зависит от вашей проблемной области)

Возможно, вам следует проверить направляющие: https://edgeguides.rubyonrails.org/active_record_migrations.html

Возможные типы столбцов: binary, boolean, date, datetime, decimal, float, integer, primary_key, string, text, time, timestamp

0 голосов
/ 18 октября 2019

ах теперь наконец то работает твой :)) LG

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...