Неявное преобразование Symbol в String при попытке добавить атрибуты во флэш-сообщения - PullRequest
0 голосов
/ 12 марта 2019

Я пытаюсь настроить свои флеш-сообщения, добавив account_name / company_name и адрес электронной почты владельца учетной записи в флеш-уведомление.

Вот действие контроллера, в котором должно работать:

  def create
    @account = Account.new(account_params)

    respond_to do |format|
      if @account.save
        format.html { redirect_to @account, flash[:success] = "#{@account.company_name} has been created. A confirmation email has been sent to #{@account.owner.email}"  }
      else
        format.html { render action: 'new' }
      end
    end
  end

Когда я отправляю форму, учетная запись сохраняется и все отношения хорошие. Однако я получаю эту ошибку:

TypeError at /accounts
no implicit conversion of Symbol into String

1 Ответ

3 голосов
/ 12 марта 2019

Здесь вы передаете flash как параметр методу redirect_to, поэтому вы должны использовать этот синтаксис

format.html { redirect_to @account, flash: {success: "your message here" }}

Синтаксис, который вы использовали, работал бы, если бы вы инициализировали flash до перенаправления.

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