Я пытаюсь показать свои ошибки (как flash, так и devise) в одном из моих файлов макета (_header.html.erb):
<div id="alerts">
<% flash.each do |name, msg| %>
<%= content_tag :div, msg, :id => "flash_#{name}" if msg.is_a?(String) %>
<% end %>
<%= devise_error_messages! %>
</div>
но я получаю сообщение об ошибке: неопределенная локальная переменная или метод `resource ', потому что сообщение об ошибке больше не находится в форме разработки. Я попробовал метод, предложенный здесь: http://pupeno.com/2010/08/29/show-a-devise-log-in-form-in-another-page/, вставив этот код в файл application_controller.rb. Неудачно. Идеи? * * 1006
о. Я забыл упомянуть ... Страницы работают без ошибок, но мои тесты не проходят ... Вот неудачный тест:
it 'succeeds with a valid email and password' do
user = Factory.create(:user)
visit sign_in_path
fill_in 'user_email', :with => user.email
fill_in 'user_password', :with => user.password
click_button 'Sign in'
page.should have_content("hi #{user.username}")
end
Это Rails3, к вашему сведению.