Per the upgrade notes,我已经添加了包含以下内容的app/models/application_record.rb文件:
class ApplicationRecord < ActiveRecord::Base
self.abstract_class = true
end但是当我尝试运行bin/rails s时,我看到以下错误:
active_record/dynamic_matchers.rb:21:in `method_missing': undefined local variable or method ` self' for ApplicationRecord(Table doesn't exist):Class (NameError)rails似乎找不到application_record.rb文件,但我重新加载了spring,并尝试运行rails s (不使用bin)。但总是出现相同的错误。
我用的是Mac,运行Ruby2.3。
这是我的Gemfile:
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '5.0.0'
gem 'mysql2', '~> 0.3.18'
gem 'bootstrap-sass', '~> 3.3.5'
gem 'sass-rails', '~> 5.0.3'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.2'
gem 'jquery-rails'
gem 'jquery-ui-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 2.5'
gem 'sdoc', '~> 0.4.0', group: :doc
#translations
gem 'rails-i18n'
gem 'i18n-active_record',
:git => 'git://github.com/svenfuchs/i18n-active_record.git',
:require => 'i18n/active_record'
gem 'geocoder'
gem 'globalize', github: 'globalize/globalize'
gem 'sunspot_rails'
gem 'globalize-accessors'
gem 'haml-rails'
gem 'slim-rails'
gem 'simple_form'
gem 'font-awesome-sass', '~> 4.4.0'
gem 'country_select'
gem 'friendly_id'
gem 'ckeditor'
gem 'carrierwave'
gem 'mini_magick'
gem 'fog'
gem 'fog-aws'
gem 'devise'
gem 'devise_invitable'
gem 'pundit'
gem 'mail'
gem 'recaptcha', :require => 'recaptcha/rails'
gem 'roadie-rails', '~> 1.0'
gem 'sitemap_generator'
gem 'will_paginate'
gem 'dumper'
group :development do
gem 'web-console'
gem 'listen', '~> 3.0.5'
gem 'sunspot_solr'
gem 'progress_bar'
gem 'letter_opener'
gem 'spring'
gem 'better_errors'
gem 'mina'
end
group :development, :test do
gem 'rspec-rails'
gem 'byebug'
gem 'binding_of_caller'
gem 'factory_girl_rails'
gem 'faker'
gem 'launchy'
end
group :test do
gem 'poltergeist'
gem 'capybara'
gem 'database_cleaner'
end这是怎么回事?
发布于 2016-08-20 14:07:03
问题出在单词self前面的两个空格字符。您需要删除这两个字符,然后再输入一次。
有一些字符在UTF-8中是不可见的,当从Rails Guide复制粘贴时,似乎包含了其中的一些字符。
https://stackoverflow.com/questions/38210221
复制相似问题