Problem z wiadomościami flash w rubinach 1.9.3 i rails 3.2.2
Mam problem z wiadomością flash w mojej aplikacji. Właściwie w mojej aplikacji użyłem urządzenia do uwierzytelniania użytkowników i mojej aplikacji z ruby 1.9.3 i rails 3.2.2.
Gdy użytkownik się loguje, wyloguj się i załóż nowe konto devise flash [: notice] działa poprawnie.
W Railsach flash [: notice] i flash [: alert] są domyślnymi wiadomościami flash.
Wiadomości flash są wyświetlane tylko raz, gdy strona jest ładowana ponownie lub gdy użytkownik jest negatywny z jednej strony na drugą
Problem polega na tym, że gdy użytkownik się loguje, wyświetla się flash [: notice], ale gdy ładuję stronę, wyświetla się flash [: notice], ale w szynach flash [: notice] wyświetla się tylko raz
Właściwie problem polega na tym, że kiedy próbuję utworzyć nowy post, przekierowałem do strony pokazu i mam metodę pomocnika do pisania wiadomości flash, ta metoda ma połączenie z układu aplikacji do wyświetlania wiadomości flash.
W kontrolerze utwórz metodę
<code>def create @asset = Asset.new(params[:asset]) @asset.user_id = current_user.id respond_to do |format| if @asset.save format.html { redirect_to @asset, alert: 'Asset was successfully created.' } format.json { render json: @asset, status: :created, location: @asset } else format.html { render action: "new" } format.json { render json: @asset.errors, status: :unprocessable_entity } end end end </code>
Metoda Helper do wyświetlania wiadomości flash
<code>FLASH_TYPES = [:error, :warning, :success, :message,:notice,:alert] def display_flash(type = nil) html = "" if type.nil? FLASH_TYPES.each { |name| html << display_flash(name) } else return flash[type].blank? ? "" : "<div class=\"#{type}\"><p>#{flash[type]}</p> </div>" end html.html_safe end </code>
Wywołałem tę metodę z układu aplikacji
<code>= display_flash </code>
Próbowałem za pomocą flasha [: alert], flash [: error], flash [: message], ale żadna wiadomość nie wyświetlała się na stronie widoku i próbowałem za pomocą gem o nazwie flash_message, to wyświetla także tylko flash [: notice]
Pomóż mi rozwiązać ten problem