我正在关注Michael Hartl的Rails教程,当我访问主页时,我一直收到此错误:
Template is missing
Missing template static_pages/home, application/home with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :raw, :ruby, :jbuilder, :coffee]}
我知道有很多人问过这个错误,但似乎没有什么对我有用。我的主页文件位于app / views / layout / static_pages / home.html.erb。
缺少"模板的部分答案"引用了 users_controller.rb 文件。这就是我所拥有的:
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
def new
@user = User.new
end
def create
@user = User.new(user_params)
if @user.save
flash[:success] = "Welcome to the Sample App!"
redirect_to @user
else
render 'new'
end
end
private
def user_params
params.require(:user).permit(:name, :email, :password,
:password_confirmation)
end
end
任何帮助将不胜感激。
答案 0 :(得分:1)
您是否尝试将页面(app / views / layout / static_pages / home.html.erb)移动到一个文件夹中?似乎Rails正在布局文件夹之外寻找它。
答案 1 :(得分:0)
我有同样的问题,
事实证明,这是我项目新闻页面中某个文件的大写。我把它命名为 News.html.erb 然而在我的路线文件中它被列为#news页面,所以它试图路由到那里没有的页面。
尝试查找任何大写并确保目录中的文件在拼写和区分大小写方面与路径文件中的名称匹配
对news.html.erb的简单更改确保了这一点。