Skinner fem direktemelding ikke fungerer med redirect_to

stemmer
0
# users_controller.rb

def create
    @user = User.new(name: params[:name],
      email: params[:email],
      password: params[:password],
      password_confirmation: params[:password_confirmation])
    if @user.save
      # successfully saved
      flash[:success] = Sign up success. WELCOME! # problem
      redirect_to user_path(@user.id)
    else
      @error_messages = @user.errors.full_messages
      flash[:danger] = Sign up failed.
      render 'new'
    end
    debugger
  end

Hei, Jeg bruker Rails 5.2.0, Ruby 2.4.1 og arbeider på AWS Cloud9 miljø. Dette er koden om kontrolleren for registreringssiden. Som du ser, tar kontrolleren informasjon fra HTML-skjema og lage en @user variabel, og lagre den når den møter tilstanden jeg gjorde i app / modeller / user.rb . Jeg pleide debugger for å teste om det er flash [: suksess] pent, og debugger sier

(byebug) flash
#<ActionDispatch::Flash::FlashHash:0x007f90180a8fe8 @discard=#<Set: {}>, @flashes={success=>Sign up success. WELCOME!}, @now=nil>

så jeg kan vite det er en direktemelding.

Jeg ønsker å vise et registrerings suksess melding på at omdirigert side. Men det virker ikke som jeg forventet.

<!-- This is the page when sign up succeed, using semantic-ui -->

<% flash.each do |key, value| %>
    <% if key=='success' %>
        <div class=ui positive message>
            <i class=close icon></i>
            <div class=header><%= value %></div>
            <p>HALLO</p>
        </div>
    <% end %>
<% end %>

Denne koden gjør ingenting på siden, Hva er gått galt med denne koden? Jeg har allerede brukt over 3 timer for å finne ut løsningen og også lese om lignende tilfeller på Stackoverflow, men det har ikke løst mitt problem.

Har jeg gått glipp av noe?

Publisert på 02/09/2018 klokken 05:23
kilden bruker
På andre språk...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more