私はRoRを初めて使用します...警告します:)
このルートをroutes.rbで作成しました:
scope :module => :mobile, :as => :mobile do
constraints(:subdomain => /m/) do
resources :home
devise_for :users, :path => "", :path_names => { :sign_in => "login", :sign_out => "logout", :sign_up => "signup" }, :controllers => {:sessions => "sidebar/sessions"}
resources :disclosures # Will have new, get, look up a disclosure
devise_for :users, :path => "", :path_names =>
{ :sign_in => "login", :sign_out => "logout", :sign_up => "signup" }
# How do I tell is to also take care of the confirm account screen?
end
end
そして、この HAML ページを作成しました。
-content_for :primary_content do
.content_container
%strong{:class => "code", :id => "message"} Hello Alex!
-content_for :primary_content do
-if signed_in?
=render "sidebar/common/primary_navigation"
-else
=render "devise/sessions/form"
ユーザーがログインしていない場合、次のエラーが表示されます。
undefined local variable or method `resource' for #<#<Class:0x147fe1990>:0x147fdab40>
と
1: = form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => {:id => "login-form"}) do |f|
2: %fieldset.field-container
3: = f.label(t :label_login)
4: .input
そしてこのスタックトレース:
app/views/devise/sessions/_form.html.haml:1:in `_app_views_devise_sessions__form_html_haml__2025707780_2630401320'
app/views/mobile/home/index.html.haml:26:in `_app_views_mobile_home_index_html_haml__2141491110_2759485880'
app/views/mobile/home/index.html.haml:22:in `_app_views_mobile_home_index_html_haml__2141491110_2759485880'
app/views/mobile/home/index.html.haml:1:in `_app_views_mobile_home_index_html_haml__2141491110_2759485880'
app/controllers/mobile/home_controller.rb:6:in `index'
したがって、私がそれを正しく理解していれば、コードのフォーム部分をどうするかわかりません。あれは正しいですか?この問題を引き起こすために何が間違っていましたか? どうすれば修正できますか?
ありがとうございました!!