что такое переменная devise_mapping и как ее включить?

Я пытаюсь реализовать аутентификацию с помощью Devise в моем приложении Rails (Rails 2.3.8, Devise 1.0.7, mongrel, работающем в Windows Vista). Но я получаю следующую ошибку:

undefined local variable or method `devise_mapping' for #<ActionView::Base:0x6d63890>

Это когда я использую автоматически сгенерированный частичный файл _devise_links.html.

<%- if controller_name != 'sessions' %>
  <%= link_to t('devise.sessions.link'), new_session_path(resource_name) %><br />
<% end -%>

<%- if devise_mapping.registerable? && controller_name != 'registrations' %>
  <%= link_to t('devise.registrations.link'), new_registration_path(resource_name) %><br />
<% end -%>

<%- if devise_mapping.recoverable? && controller_name != 'passwords' %>
  <%= link_to t('devise.passwords.link'), new_password_path(resource_name) %><br />
<% end -%>

<%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
  <%= link_to t('devise.confirmations.link'), new_confirmation_path(resource_name) %><br />
<% end -%>

<%- if devise_mapping.lockable? && controller_name != 'unlocks' %>
  <%= link_to t('devise.unlocks.link'), new_unlock_path(resource_name) %><br />
<% end -%>

Есть идеи, как это исправить? Я предполагаю, что переменная devise_mapping не включается в мои представления, ); Здесь ...

Читая некоторый исходный код в проекте GNU, я натолкнулся на этот фрагмент встроенной сборки:

__asm__ (
  "divq %4"
  : "=a" (q), "=d" (r)
  : "0" (n0), "1" (n1), "rm" (d)
);

Здесь переменные q , r , n0 , n1 и d - 64-битные целые числа. Я знаю достаточно ассемблера, чтобы понять суть этого, но есть некоторые детали, в которых я не уверен.

Что я понимаю:

Мы делим содержимое регистра RAX на d , поместив частное в q , а остаток в r .

Чего я не понимаю

  1. Почему есть три входы Вот? Нам нужно только ввести дивиденд и делитель, так что использовать может быть 3 входа?
  2. Я не могу сказать, какой из входов является делимым. В общем, на самом деле я ничего не вижу загружается в регистр RAX, Итак, как он узнает, что делить на что?
5
задан Channel72 27 December 2010 в 22:41
поделиться