2017-01-03 4 views
1

Ruby 2.4のRails 5.0のレールコンソールからレコードを追加しようとしました。
Got Error:NoMethodError:nilのための未定義メソッドfetch_value:レールコンソールに新しいレコードを作成しようとするとNilClass

2.4.0 :018 > newgroup = AuditionGroup.new 
NoMethodError: undefined method `fetch_value' for nil:NilClass 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activerecord-5.0.1/lib/active_record/attribute_methods/read.rb:66:in `_read_attribute' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activerecord-5.0.1/lib/active_record/attribute_methods/read.rb:36:in `__temp__36c6163737' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activerecord-5.0.1/lib/active_record/core.rb:313:in `initialize' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activerecord-5.0.1/lib/active_record/inheritance.rb:65:in `new' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activerecord-5.0.1/lib/active_record/inheritance.rb:65:in `new' 
    from (irb):18 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/railties-5.0.1/lib/rails/commands/console.rb:65:in `start' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/railties-5.0.1/lib/rails/commands/console_helper.rb:9:in `start' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/railties-5.0.1/lib/rails/commands/commands_tasks.rb:78:in `console' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/railties-5.0.1/lib/rails/commands/commands_tasks.rb:49:in `run_command!' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/railties-5.0.1/lib/rails/commands.rb:18:in `<top (required)>' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `require' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `block in require' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:259:in `load_dependency' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `require' 
    from /Users/Nick/Sites/testapp/bin/rails:9:in `<top (required)>' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:287:in `load' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:287:in `block in load' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:259:in `load_dependency' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:287:in `load' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/commands/rails.rb:6:in `call' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/command_wrapper.rb:38:in `call' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/application.rb:191:in `block in serve' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/application.rb:161:in `fork' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/application.rb:161:in `serve' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/application.rb:131:in `block in run' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/application.rb:125:in `loop' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/application.rb:125:in `run' 
    from /Users/Nick/.rvm/gems/ruby-2.4.0/gems/spring-2.0.0/lib/spring/application/boot.rb:19:in `<top (required)>' 
    from /Users/Nick/.rvm/rubies/ruby-2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
    from /Users/Nick/.rvm/rubies/ruby-2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
    from -e:1:in `<main>' 

2.4.0 :017 > AuditionGroup 
=> AuditionGroup(id: integer, audition_date: date, audition_time: time, class: string, created_at: datetime, updated_at: datetime) 

私は新しいレコードを追加しようとすると、その後、私は、次のエラーメッセージが表示されます。モデルは、私はAuditionGroupを検索すると、すべてが完璧に動作

「AuditionGroup」と呼ばれています

これは私のAuditionGroupモデルです

class AuditionGroup < ApplicationRecord 
    self.table_name = "auditiongroups" 
    has_many :auditions 
end 

答えて

0

問題の根本は、classという列があることです。

Googleでは、Railsの「予約済み」単語のリストについては、classの1つです。

+0

ありがとうございました!それはうまくいった。 –

関連する問題