Проблема генератора скаффолдов в Rails 2.1+ - PullRequest
1 голос
/ 24 ноября 2008

У меня установлена ​​свежая Rails 2.2, дело в том, что все работает нормально, пока я не использую генератор скаффолдов.

$ script/generate scaffold pages \
  title:string description:string content:text

$ rake db:migrate

Но когда я запускаю сервер с этим адресом: http://localhost:3000/pages/, я получаю это:

NoMethodError in PagesController#index
undefined method `find' for ActionController::Caching::Pages:Module

app/controllers/pages_controller.rb:5:in 'index'
/Library/Ruby/Gems/1.8/gems/actionpack-2.2.2/lib/action_controller/base.rb:1253:in 'send'
/Library/Ruby/Gems/1.8/gems/actionpack-2.2.2/lib/action_controller/base.rb:1253:in 'perform_action_without_filters'
/Library/Ruby/Gems/1.8/gems/actionpack-2.2.2/lib/action_controller/filters.rb:617:in 'call_filters'
...

Я не могу понять, что я сделал не так? Это что-то новое для Rails?

1 Ответ

4 голосов
/ 24 ноября 2008

Название ресурса должно быть в единственном числе. Так что попробуйте

script/generate scaffold page title:string description:string content:text

вместо страниц .

Кроме того, ваш вызов генератора скаффолдов создает модель Pages, которая имеет то же имя, что и модуль ActionController :: Caching :: Pages, который доступен из вашего контроллера, и Rails запутывается (поскольку у модуля Pages нет такого метода, как find) .

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