سؤال

الآن ، يجب أن أعترف ، أنا جديد تمامًا على Ruby on Rails ولا أفهم كل مفهوم تمامًا. لقد قمت بتثبيت ابتكار للمصادقة وتبعته هذا الدليل لتضمين التسجيل وتسجيل روابط في وجهات نظري.

هذا ما فعلته في بلدي application.html.erb:

<ul class="hmenu">
  <%= render 'devise/menu/registration_items' %>
  <%= render 'devise/menu/login_items' %>
</ul>

و الخاص بي views/devise/menu/_login_item.html.erb يشبه هذا:

<% if user_signed_in? %>
  <li>
  <%= link_to('Logout', destroy_user_session_path) %>        
  </li>
<% else %>
  <li>
  <%= link_to('Login', new_user_session_path)  %>  
  </li>
<% end %>

الآن أحصل على رسالة الخطأ التالية:

ActionView::MissingTemplate in Home#index
Missing partial devise/menu/login_items with {:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]} in view paths "/Users/blah/Documents/webapp/mapeval/app/views", "/Users/blah/.rvm/gems/ruby-1.9.2-p0/gems/devise-1.1.3/app/views"

ما هو سبب هذا الخطأ؟

هل كانت مفيدة؟

المحلول

الجزء الخاص بك لديه اسم ملف غير صالح (مفقود س في نهايةالمطاف). إعادة تسمية views/devise/menu/_login_item.html.erb إلى views/devise/menu/_login_items.html.erb

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top