Saya menggunakan permata alat untuk prosedur sign_in / sign_out.
Saya menghasilkan file tampilan dari merancang, menggunakan rails g devise views
Saya melihat ada file merancang / sesi / new.html.erb yang berisi formulir untuk sign_in.
Saya membuat file lain merancang / sesi / _form.html.erb dan melakukannya <%= render 'form' %>
dalam file new.html.erb, dan itu bekerja dengan sangat baik.
Sekarang, saya ingin memasukkan formulir ini dari pengontrol yang berbeda. Jadi dalam sebuah pengontrol yang disebut 'main', (khususnya, dalam halaman tampilan) 'mains / index.html.erb' saya memasukkan <%= render 'devise/sessions/form' %>
file. Tampaknya inklusi berfungsi dengan baik, tetapi saya mendapatkan kesalahan berikut.
NameError in Mains#index
Showing /home/administrator/Ruby/site_v4_ruby/app/views/devise/sessions/_form.html.erb where line #1 raised:
undefined local variable or method `resource' for #<#<Class:0x007f1aa042d530>:0x007f1aa042b870>
Extracted source (around line #1):
1: <%= form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f| %>
2: <p><%= f.label :email %><br />
3: <%= f.text_field :email %></p>
4:
Tampaknya bagian form_for (sumber daya, ...) menyebabkan masalah (yang berfungsi dengan baik jika saya berada di halaman sign_in merancang yang asli ... Bagaimana saya bisa menyelesaikan masalah ini dengan cara rails?
Saya pribadi lebih suka menggunakan fungsi 'render' untuk memasukkan formulir, daripada menulis kode html sebaris.
Apakah saya harus menentukan sesuatu (sumber daya) di dalam pengontrol 'utama'?
Aku akan mengapresiasi bantuan mu. Terima kasih.