1

Rails 3.2.8 を使用して大学のプロジェクト用にブログのようなサイトを構築しています。Twitter ブートストラップのモーダル ボックスを使用して目立たないログイン システムを実装したいと考えています。この件についていくつかのチュートリアルを試しましたが、これまでのところ機能しません。セッションコントローラーには次のものがあります:

sessions_controller.rb

class SessionsController < ApplicationController

def new
  respond_to do |format|
    format.html
    format.js
  end
end

# Handling authentication when user submits login form
# with authenticate method. If the authentication is
# successful stores a permanent or temporary cookie based
# on selection :remember_me with an authorization token
# and redirects to root_url with notice else displays
# alert and redirects to new
def create
    user = User.authenticate(params[:email], params[:password])
    if user
        if params[:remember_me]
            cookies.permanent[:auth_token] = user.auth_token
        else
            cookies[:auth_token] = user.auth_token
        end
        redirect_to root_url, :notice => "Logged in!"
    else
        flash.now.alert = "Invalid email or password"
        render "new"
    end
end

# Deleting cookie and redirecting to root_url on
# logout with notice
def destroy
    cookies.delete(:auth_token)
    redirect_to root_url, :notice => "Logged out!"
    end

end

a :remote => trueアプリケーションビューで、フォームの部分的なコンテンツがレンダリングされ、ログインリンクに表示される非表示のモーダルを作成しました

application.html.erb

<div class="modal hide fade" id = "modal">
<div class="modal-body">
</div>
</div>
.
.
.
<%= link_to(log_in_path, :remote => true) do %>
<i class="icon-check"></i> Log in
<% end %>

最後に /app/views/sessions に js ビューがあります

new.js.erb

$("#modal-body").html(<%= escape_javascript render(:partial => 'form')%>);
$('#modal').modal('show');

しかし、モーダル レールにログイン フォームを表示する代わりに、ログイン ページ ( new.html.erb) に移動します。誰でもこれで私を助けることができますか?

4

0 に答える 0