1

私のページでユーザーがサインアップするとき、私はそれらを root_path にリダイレクトしたいと思います(これはユーザーコントローラーで行う方法を見つけました)。しかし、私はこのページの前にモーダルを表示したいと思っています(これは、ユーザーがこのルート/ホームページ(フラッシュメッセージのように)を初めて見たときにのみ発生するはずです)。

ユーザーコントローラーの作成メソッドは次のとおりです。

def create
    @user = User.new(params[:user])
    if @user.save
      sign_in @user
      redirect_to root_path
    else
      render 'new'
    end
  end

モーダルは app/views/layouts/_modal.html.erb に配置されます。これを実現する方法を知っている人はいますか?

(ジェップ、私は初心者です:)

4

1 に答える 1

7

あなたはフラッシュについて言及しましたが、モーダルを表示するためにRailsのビルド済みフラッシュの使用法を利用するのは良い考えだと思いました。

def create
  @user = User.new(params[:user])
  if @user.save
    sign_in @user
    session[:modal] = true
    redirect_to root_path
  else
    render 'new'
  end
end

あなたの見解では

<% if session[:modal] == true %>
  <%= render :partial => 'layouts/modal'%>
<% end %>
于 2012-07-01T21:13:27.437 に答える