Направляющие 2.3.5: флэш-память [: заметьте], исчезает после redirect_to вызов

Здесь у меня есть два метода контроллера:

  def invite
    if request.post?
      begin 
        email = AccountMailer.create_invite(@user,url)
        AccountMailer.deliver(email)
        flash[:notice] = "Invitation email sent to #{@user.email}"
      rescue
        #mail delivery failed
        flash[:error] = "Failed to deliver invitation"
      end

      redirect_to :action => :show, :id => @user.id
    end
  end

и

  def show
    @title = "User #{@user.full_name}"
  end

Проблема, когда я отправляю приглашение и перенаправляюсь к./шоу, я не вижу сообщений вообще. Если я изменяю redirect_to для рендеринга, сообщение появляется. Однако, разве это не предназначено, чтобы флэш-память работала в непосредственных последующих запросах?

BTW, я использую установку Rails+Passenger, это могло быть так, чтобы перенаправленный запрос перешел к другому экземпляру приложения?

1
задан xyzman 20 May 2010 в 07:09
поделиться

2 ответа

Блок восстановления устанавливает flash [: error], а не flash [: notice]. Ваше представление действительно отображает и то, и другое?

1
ответ дан 3 September 2019 в 00:26
поделиться

Погуглил получше и нашел это обсуждение:

http://www.mail-archive.com/activescaffold@googlegroups.com/msg04284.html

Решение есть: заменить плагин на

script/plugin install git://github.com/ewildgoose/render_component.git -r rails-2.3 --force

Хотя я не использую ActiveScaffold, есть некоторый унаследованный код, который зависит от плагина render_component. Обновление плагина до версии ветки помогло, хотя я планирую полностью избавиться от него.

1
ответ дан 3 September 2019 в 00:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: