sign_in / sign_out 프로 시저에 고안 보석을 사용하고 있습니다.
을 사용하여 고안에서 뷰 파일을 생성했습니다. rails g devise views
sign_in에 대한 양식을 포함하는 devise / sessions / new.html.erb 파일이있는 것을 보았습니다.
나는 다른 파일 devise / sessions / _form.html.erb를 만들고 <%= render 'form' %>
new.html.erb 파일 내에서 만들었고 매우 잘 작동했습니다.
이제 다른 컨트롤러에서이 양식을 포함하고 싶었습니다. 따라서 'main'이라는 컨트롤러 (특히보기 페이지 내) 'mains / index.html.erb'에 <%= render 'devise/sessions/form' %>
파일이 포함되어 있습니다. 포함이 정상적으로 작동하는 것 같지만 다음과 같은 오류가 발생합니다.
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:
form_for (resource, ...) 부분이 문제를 일으키는 것 같습니다 (원래 고안 sign_in 페이지에 있으면 잘 작동합니다 ...이 문제를 어떻게 레일로 해결할 수 있습니까?
개인적으로 HTML 코드를 인라인으로 작성하는 대신 '렌더링'기능을 사용하여 양식을 포함하는 것을 선호합니다.
'main'컨트롤러 내에서 무언가 (자원)를 지정해야합니까?
도와 주셔서 감사합니다. 감사합니다.