ActiveRecord :: Base.new, возвращающий ноль - PullRequest
1 голос
/ 01 августа 2010

По какой-то причине одна из моих моделей в рельсах возвращает ноль, когда я звоню .new. Это только проблема в контроллере. Когда я пытаюсь запустить консоль, она возвращает объект с атрибутами nil, как и следовало ожидать. Я подозреваю, что проблема в моем контроллере, но я понятия не имею.

Это также происходит, когда я звоню .all. Опять же, я могу выполнить эти команды вручную из командной строки без проблем.

Вот код контроллера:

http://gist.github.com/502816

РЕДАКТИРОВАТЬ: Похоже, что некоторые из моих других моделей действуют так же. Эта проблема явно глубже, чем этот контроллер / модель. Я все еще очень плохо знаком с рельсами, поэтому я не уверен, где искать, чтобы отладить это.

РЕДАКТИРОВАТЬ 2: Мой мудрый друг помог мне понять, что действие контроллера даже не вызывается. Мой фильтр до этого, однако, есть, но он не перенаправляет. Так или иначе, правильный контроллер найден, но соответствующее действие не вызвано.

Журнал моего сервера ГОВОРИТ выполняется правильное действие, но фактическое тело функции не выполняется.

1 Ответ

1 голос
/ 01 августа 2010

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

Попробуйте переместить закрытое объявление и redirect_if_not_logged_in в конец файла, т. Е. После метода destroy.

Для получения дополнительной информации о том, какПубличная / частная / защищенная работа в Ruby: http://www -users.math.umd.edu / ~ dcarrera / ruby ​​/ 0.3 / chp_04 / features.html

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