у меня есть
class CommentsController < ApplicationController
def foo
session[:comments] ||= {}
comment = Comment.new(params[:comment])
# Validation and such
session[:comments][comment.post_id] = comment
#several redirections and remote authentications. User returns to another method,
# But for the sake of the example, we continue here.
CommentsController.publish_from_session
end
def self.publish_from_session
session[:comments].each do |comment|
comment.save!
end
end
end
Это дает мне не может конвертировать символ в целое число ошибка. При погружении в это, по-видимому, session
просто недоступен или не хэш. Возможно, что звонить CommentsController.some_method
просто неправильно.
Какое будет правильное решение?
Также: как уже упоминалось в прокомментированном коде, реальная сделка немного сложнее. Пользователь возвращается либо на другой контроллер (сессионный контроллер через oauth), либо на еще один метод в CommentsController. См. контроллеры, вызывающие друг друга и Комментарии, созданные после Oauth о том, как я пришел к этому.