简写为:
问题是,在本教程中,我被告知要创建一个micropost资源,其中包括它的模型和控制器。在用rspec测试它的一些操作时,我有创建和销毁操作的“缺少模板”错误。但是本教程没有提到为这些操作创建视图,根据它,这些测试应该是通过的。
这是我对这个问题的原始的,更长的描述:
我正在做railstutorial.org,并在第11.3.2章中遇到了一些问题。在清单11.25中,我们编写了Micropost创建操作的测试。在运行它们之后,我得到一个模板错误,在所有这些中:
ActionView::MissingTemplate:
Missing template microposts/create with {:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]} in view paths "/Users/me/Dropbox/dev/rails/tutorial/app/views"我很困惑。本教程没有提到为这些操作创建视图,也没有提到测试应该在此时通过。也许我做错了什么的一个迹象是,本教程没有提到需要使用generate来创建Micropost控制器,但我使用了它。
这是我的微博控制器:
class MicropostsController < ApplicationController
before_filter :authenticate
def create
end
def destroy
end
end还有我的routes.rb
Secondappr::Application.routes.draw do
get "sessions/new"
resources :users
resources :sessions, :only => [ :new, :create, :destroy ]
resources :microposts, :only => [ :create, :destroy ]
get "pages/home"
root :to => 'pages#home'
match '/contact', :to => 'pages#contact'
match '/about', :to => 'pages#about'
match '/help', :to => 'pages#help'
match '/signup', :to => 'users#new'
match '/signin', :to => 'sessions#new'
match '/signout', :to => 'sessions#destroy'
end发布于 2011-08-13 20:26:30
在11.26中实现了create方法。该操作在成功时重定向到根,或在失败时呈现“page/home”,因此不应该需要create模板。从我的阅读来看,它似乎是说在create实现之后,而不是之前,应该通过测试。
https://stackoverflow.com/questions/7052778
复制相似问题