簡體   English   中英

我如何使用模態和遠程形式使before_action:logged_in_user工作

[英]how do I make before_action :logged_in_user work with a modal and remote form

例如,如果我有以下代碼:

class PhotosController < ApplicationController
  before_action :logged_in_user
end

class UsersController < ApplicationController
  def logged_in_user
    unless logged_in?
      store_location
      flash[:danger] = "Please log in or register"
    redirect_to login_url
  end
end

當Web用戶導航到任何照片的路線: example.com/photosexample.com/photos/newexample.com/photos/1他們將redirected_tologin_url頁面,如果他們不是已經LOGGED_IN。

但是,如果我要從主頁example.com中打開一個包含remote form_for @photo?的模式,該form_for @photo? 它將不允許login_url的Web用戶提交表單,並且在提交表單后,他們將被redirected_tologin_url但這遠非理想,我希望他們立即被重定向。

在您看來; 我認為您可以將此遠程表單放在局部中,然后在用戶登錄時呈現它,應該是這樣的

homepage.html.erb

<% if logged_in? %>
  <%= render 'form_partial' %>
<% else %>
  <%= render 'somthing_else' %>
<% end %>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM