1

当用户在我的页面上注册时,我希望他们被重定向到 root_path(我已经知道如何在用户控制器中执行此操作)。但是然后我希望在此页面前面显示一个模式(并且这应该只在用户第一次看到这个根/主页时发生(就像一个 Flash 消息)。

这是我在用户控制器中的创建方法:

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

modal 放在 app/views/layouts/_modal.html.erb 中。有谁知道如何做到这一点?

(杰普,我是新手:)

4

1 回答 1

7

您提到了 flash,我认为利用 Rails 的预建 flash 使用来显示您的模式是一个好主意。

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 回答