未定义的局部变量或方法“ main_page”

雅科夫

在我的application.html.erb中,有一个菜单,该菜单显示在每个页面上。但是我不能使用“退出”链接,出现错误。

未定义的局部变量或方法“ main_page”

我的路线中有“ main_page”,但我不明白为什么它不起作用。我尝试在用户控制器的操作中使用显示视图中的“退出”链接,但效果很好。

show.html

<% content_for :user_form do %>

<p id="notice"><%= notice %></p>

<p>
  <strong>Name:</strong>
  <%= @user.name %>
</p>

<p>
  <strong>Email:</strong>
  <%= @user.email %>
</p>

<%= link_to 'Edit', edit_user_path(@user) %> 
<%= link_to 'My dates', :controller => :calendar, :action => :month_for_user %>
<%= link_to 'sign out', :controller => :sessions, :action => :destroy %>
<%end%>

当从application.html使用链接时,为什么会出现错误?虽然“我的约会”链接有效。我该如何解决?

application.html

<div id = 'user_menu' >

  <p id="notice"><%= notice %></p>

<p>
  <strong>Name:</strong>
  <%= current_user.name %>
</p>

<p>
  <strong>Email:</strong>
  <%= current_user.email %>
</p>

<%= link_to 'Edit', edit_user_path(current_user) %> 
<%= link_to 'My dates', :controller => 'calendar', :action => 'month_for_user' %>
<%= link_to 'sign out', :controller => 'sessions', :action => 'destroy' %>


<% end %>

  </div>

sessions_controller

def destroy
    redirect_to main_page
    sign_out
end

路线

Prefix Verb   URI Pattern                  Controller#Action
      meetings GET    /meetings(.:format)          meetings#index
               POST   /meetings(.:format)          meetings#create
   new_meeting GET    /meetings/new(.:format)      meetings#new
  edit_meeting GET    /meetings/:id/edit(.:format) meetings#edit
       meeting GET    /meetings/:id(.:format)      meetings#show
               PATCH  /meetings/:id(.:format)      meetings#update
               PUT    /meetings/:id(.:format)      meetings#update
               DELETE /meetings/:id(.:format)      meetings#destroy
      new_user GET    /users/new(.:format)         users#new
         users GET    /users(.:format)             users#index
     main_page GET    /main_page(.:format)         welcome#domain
   new_session GET    /sign_in(.:format)           sessions#new
       signout GET    /sign_out(.:format)          sessions#destroy
      sessions POST   /sessions(.:format)          sessions#create
               GET    /sessions/new(.:format)      sessions#new
  edit_session GET    /sessions/:id/edit(.:format) sessions#edit
       session PATCH  /sessions/:id(.:format)      sessions#update
               PUT    /sessions/:id(.:format)      sessions#update
               DELETE /sessions/:id(.:format)      sessions#destroy
               GET    /sessions/:id(.:format)      welcome#domain
               GET    /users(.:format)             users#index
               POST   /users(.:format)             users#create
               GET    /users/new(.:format)         users#new
     edit_user GET    /users/:id/edit(.:format)    users#edit
          user GET    /users/:id(.:format)         users#show
               PATCH  /users/:id(.:format)         users#update
               PUT    /users/:id(.:format)         users#update
               DELETE /users/:id(.:format)         users#destroy
month_for_user GET    /month_for_user(.:format)    calendar#month_for_user

Rails对我来说是新事物,也许这是一个愚蠢的问题,但是老实说,我很遗憾地试图找到一个没有结果的答案。请帮我解决这个问题!谢谢

帕万

未定义的局部变量或方法“ main_page”

错误来自的destroy方法sessions_controller它应该是

def destroy
  redirect_to main_page_url #or action: "main_page"
  sign_out 
end

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

main:Object的未定义局部变量或方法`'

Rails:main:Object的未定义局部变量或方法“ signup_path”

NameError:main:Object的未定义局部变量或方法“ request”

main:Object(NameError)的未定义局部变量或方法'res'

main:Object(NameError)的未定义局部变量或方法`config'

main:Object(NameError)的未定义局部变量或方法“类别”

main:Object (NameError) 的未定义局部变量或方法“api”

Rspec和Capybara未定义的局部变量或方法`page'

尝试设置Vagrant代理时出现“ NameError:main:Object的未定义局部变量或方法'config'

Ruby查找需要上传哪些文件或目录:main:Object(NameError)的未定义局部变量或方法“ dir”

未定义的局部变量或方法

局部变量未定义的外部方法

未定义的局部变量或方法“sub_task”

Contact:Class的未定义局部变量或方法“ email”

未定义的局部变量或方法“ arr”

未定义的局部变量或模块的方法

未定义的局部变量或方法“ recipient_email”

未定义的局部变量或方法“ place”

错误:顶级未定义的局部变量或方法'var'

在Rails中未定义的局部变量或方法to_a?

(未定义的局部变量或方法“ byebug”

Rspec测试中未定义的局部变量或方法?

#<RSpec :: ExampleGroups的未定义局部变量或方法`clientid'

RSPEC未定义的局部变量或方法“响应”

Rails:未定义的局部变量或方法`options'

NameError未定义的局部变量或方法“ drink”

未定义的局部变量或方法“ last_email”

Rails Ajax未定义的局部变量或方法

rails:未定义的局部变量或方法“请求”