[英]Error after running rails server or rails generate
我正在学习如何按照本书开发Rails应用程序: http : //ruby.railstutorial.org目前我在第6章。
这一切都很顺利,直到我想使用'rails s'命令查看应用程序。 运行该命令后,我收到以下错误:
'default_controller_and_action': missing :action (ArgumentError)
我之前遇到过这个问题并通过纠正'routes.rb'中的错误解决了这个问题。 但这次我无法解决;(
的routes.rb
SampleApp::Application.routes.draw do
get "users/new"
root to: 'static_pages#home'
match '/signup', to: 'users#new'
match '/home', to: 'static_pages#home'
match '/help', to: 'static_pages#help'
match '/about', to: 'static_pages#about'
match '/contact', to: 'static_pages#'
end
application.html.erb
<!DOCTYPE html>
<html>
<head>
<title><%= full_title(yield(:title)) %></title>
<%= stylesheet_link_tag "application", media: "all" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
<%= render 'layouts/shim' %>
</head>
<body>
<%= render 'layouts/header' %>
<div class="container">
<%= yield %>
<%= render 'layouts/footer' %>
<%= debug(params) if Rails.env.development? %>
</div>
</body>
</html>
_header.html.erb
<header class="navbar navbar-fixed-top navbar-inverse">
<div class="navbar-inner">
<div class="container">
<%= link_to "sample app", root_path, id: "logo" %>
<nav>
<ul class="nav pull-right">
<li><%= link_to "Home", root_path %></li>
<li><%= link_to "Help", help_path %></li>
<li><%= link_to "Sign in", '#' %></li>
</ul>
</nav>
</div>
</div>
</header>
_footer.html.erb
<footer class="footer">
<nav>
<ul>
<li><%= link_to "About", about_path %></li>
<li><%= link_to "Contact", contact_path %></li>
<li><a href="#/">News</a></li>
</ul>
</nav>
</footer>
我希望有人可以帮我解决这个问题! :)
提前致谢!
match '/contact', to: 'static_pages#'
缺少一个动作。
它具有'controller#action'
形式。 在这种情况下,您只提供了控制器,但缺少操作名称。
如果在本教程的这一部分中您还没有为联系人创建动作,则可以在创建它之前对此行进行注释,或者立即为其创建控制器。
在第一种情况下,代码将是
# match '/contact', to: 'static_pages#'
在第二种情况下,有必要插入
# app/controllers/static_pages_controller.rb
...
def contact
end
并在/app/views/static_pages/contact.html.erb
创建一个布局
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.