2014-01-09 3 views
0

Я получил исходный код rails3-devise-bootstrap-example, чтобы получить мою страницу входа в систему (которая обычно - без AJAX - отлично работает) во всплывающем окне.Rails + Facebox: всплывающее окно не работает

Когда я нажимаю на ссылку для входа, ничего не происходит. Журнал сообщает мне

Started GET "/facebox/fb_login" for 127.0.0.1 at 2014-01-09 19:15:0 
    Processing by FaceboxController#fb_login as JS 
    Rendered devise/shared/_links.erb (3.0ms) 
    Rendered devise/sessions/_new.html.erb (1155.0ms) 
    Rendered facebox/fb_login.js.erb (1251.0ms) 
Completed 200 OK in 1509ms (Views: 1508.0ms | ActiveRecord: 0.0ms) 

Но не появляется всплывающее окно для входа в систему.

Вот ссылка Войти в моей index.html.erb файл

<%= link_to 'Login', fb_login_path, :remote => true %> 

Это начинается мой fb_login.js файлу

$.facebox('<%= escape_javascript(render :partial => 'devise/sessions/new') %>') 

и должен открыть _new.html. erb, который выглядит следующим образом:

<%= simple_form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f| %> 
    <div class="form-inputs"> 
    <%= f.input :email, :required => false, :autofocus => true %> 
    <%= f.input :password, :required => false %> 
    <%= f.input :remember_me, :as => :boolean if devise_mapping.rememberable? %> 
    </div> 

    <div class="form-actions"> 
    <%= f.button :submit, "Sign in" %> 
    </div> 
<% end %> 

<%= render "devise/shared/links" %> 

но это не так. Что пошло не так?

ответ

0

Я получил ответ сам. В соответствии с активами/javascripts мне пришлось определить

jQuery -> 
    $('a[rel*=facebox]').facebox() 

# facebox - make modal 

$(document).bind "loading.facebox", -> 
    $(document).unbind "keydown.facebox" 
    $("#facebox_overlay").unbind "click" 

в файле js.coffee.

Смежные вопросы