получение ошибки от devise «Пользователь не отвечает на метод devise» при запуске «rails generate devise: install» - PullRequest
7 голосов
/ 12 февраля 2012

Я получаю сообщение об ошибке от devise "Пользователь не отвечает на метод devise" при запуске "rails generate devise: install".Идеи о том, как решить?

На самом деле также получить эту ошибку при попытке запустить "rails generate devise: install", я только что отметил.и

Gregs-MacBook-Pro:testapp greg$ ruby -v 
**ruby 1.8.7** (2010-01-10 patchlevel 249) [universal-darwin11.0]

Gregs-MacBook-Pro:testapp greg$ rails -v
**Rails 3.2.1**

Gregs-MacBook-Pro:testapp greg$ gem list

*** LOCAL GEMS ***

actionmailer (3.2.1)
actionpack (3.2.1)
activemodel (3.2.1)
activerecord (3.2.1)
activeresource (3.2.1)
activesupport (3.2.1)
addressable (2.2.6)
arel (3.0.0)
bcrypt-ruby (3.0.1)
builder (3.0.0)
bundler (1.0.22)
coffee-rails (3.2.2)
coffee-script (2.2.0)
coffee-script-source (1.2.0)
devise (2.0.1)
erubis (2.7.0)
execjs (1.3.0)
faraday (0.7.6)
hike (1.2.1)
i18n (0.6.0)
journey (1.0.1)
jquery-rails (2.0.0)
json (1.6.5)
mail (2.4.1)
mime-types (1.17.2)
multi_json (1.0.4)
multipart-post (1.1.4)
mysql (2.8.1)
mysql2 (0.3.11)
oauth (0.4.5)
oauth-plugin (0.4.0.rc2)
oauth2 (0.5.2)
orm_adapter (0.0.6)
polyglot (0.3.3)
rack (1.4.1)
rack-cache (1.1)
rack-ssl (1.3.2)
rack-test (0.6.1)
rails (3.2.1)
railties (3.2.1)
rake (0.9.2.2)
rdoc (3.12)
rubygems-update (1.8.15)
sass (3.1.15, 3.1.14)
sass-rails (3.2.4)
sprockets (2.1.2)
sqlite3 (1.3.5)
thor (0.14.6)
tilt (1.3.3)
treetop (1.4.10)
tzinfo (0.3.31)
uglifier (1.2.3)
warden (1.1.0)

Ответы [ 4 ]

49 голосов
/ 12 февраля 2012

Похоже, у вас уже есть метод devise, вызываемый в вашей модели User.Возможно, вы уже пробежали rails g devise User?

Закомментируйте это и закомментируйте строку devise_for :users в файле маршрутов, если она там есть.

4 голосов
/ 29 июля 2013

Завершение учебника по рельсам, и эти ответы у меня не сработали, но после некоторого поиска нашли решение. Надеюсь, что это поможет всем, кто новичок и сталкивается с этой проблемой.

  1. Перейти к: config / rout.rb file
  2. Закомментируйте строку devise_for :installs (поместите хеш-тег впереди)
  3. Перейдите к терминалу Ruby и введите заново: rails generate devise:install

Теперь Devise должен быть установлен правильно, а последующие ошибки должны быть устранены.

Источник

1 голос
/ 11 июля 2013

Для людей, которые прибыли сюда из-за следующей ошибки:

Пользователь не отвечает на метод 'devise'.Обычно это означает, что вы не загрузили свой файл ORM или он загружается слишком поздно.Чтобы исправить это, обязательно укажите 'devise / orm / YOUR_ORM' внутри 'config / initializers / devise.rb' или перед определением приложения в 'config / application.rb' (RuntimeError)

но у вас уже правильно инициализирован ORM, возможно, он связан с драгоценными камнями.У меня возникла та же проблема со старым приложением, и это было связано с несовместимостью с гемом active_reload.gem active_reload не совместим с Rails 3.2 и должен быть удален. active_reload был включен в Rails 3.2, поэтому его можно удалить.

Я получил решение здесь: http://anlek.com/2012/02/user-does-not-respond-to-devise-method/

0 голосов
/ 17 июня 2013

У меня была такая же проблема. однако для меня это было вызвано конфликтом с гемом active_reload. как только я удалил это все было хорошо. я получил чаевые от https://github.com/plataformatec/devise/issues/1597

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