Я искал, чтобы справиться с изобретением и его разработками и как-то упал при первом препятствии. Я посмотрел в нескольких местах, но, похоже, не смог найти кого-то с этой ошибкой.
Итак, я создал простой Домашний контроллер с индексным представлением и добавил корневой индекс home #, а также обеспечил настройку параметров url по умолчанию в файле development.rb. Затем я просто набрал:
rails generate devise User
Это создало файл user.rb в моделях со следующими параметрами:
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
end
До сих пор довольно просто, у меня есть следующий Gemfile:
source 'https://rubygems.org'
gem 'rails', '4.0.5'
gem 'sqlite3'
gem 'sass-rails', '~> 4.0.2'
gem 'devise'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 1.2'
group :doc do
gem 'sdoc', require: false
end
gem 'bcrypt'
И когда я запускаю rake db: migrate, я получаю следующую ошибку:
rake aborted!
NoMethodError: undefined method `devise' for User (call 'User.connection' to establish a connection):Class
/home/jonlee/.rvm/gems/[email protected]_rails_4_0/gems/activerecord-4.0.5/lib/active_record/dynamic_matchers.rb:22:in `method_missing'
/home/jonlee/Projects/rails/userauth/app/models/user.rb:4:in `<class:User>'
/home/jonlee/Projects/rails/userauth/app/models/user.rb:1:in `<top (required)>'
Im в недоумении относительно того, почему модель User не может найти метод "devise", когда, насколько я вижу, он определенно существует.
Я получаю схожие ошибки с рейк-маршрутами, сервером rails server и rails console.
Для получения дополнительной информации я использую ruby 2.1.1, если это помогает?