【问题标题】:Rspec2 Missing template ErrorRspec2缺少模板错误
【发布时间】:2011-07-14 18:25:36
【问题描述】:

从 Rails 2 升级到 3。从 RSpec 1 升级到 2。看起来 capybara/webrat 正在尝试查找模板,而我只希望它找到动作。什么是可能的解决方法?

错误

Failure/Error: delete :read, :id => @feed_entry.id, :format => 'json'
Missing template feed_entries/read with {:handlers=>[:erb, :rjs, :rhtml, :rxml, :builder], :formats=>[:json], :locale=>[:en, :en]} in view paths "/Users/maletor/Sites/3md/app/views", ...
# ./app/controllers/feed_entries_controller.rb:37:in `read'
# ./app/controllers/feed_entries_controller.rb:35:in `read'
# ./spec/controllers/feed_entries_controller_spec.rb:200

app/controllers/feed_entries_controller#read

def read
  if request.post?    
    @feed_entry.read_by(current_account)
  elsif request.delete? 
    @feed_entry.unread_by(current_account)
  end    

  respond_to do |format|
    format.html  { redirect_to topic_path(params[:topic_id]) }
    format.json  { render :nothing => :true, :status => :no_content }
    format.plist { render :nothing => :true, :status => :no_content }
  end
end

spec/controllers/feed_entries_controller_spec.rb:200

delete :read, :id => @feed_entry.id, :format => 'json'

【问题讨论】:

    标签: ruby-on-rails ruby testing rspec rspec2


    【解决方案1】:

    您似乎不能使用不同于 200 的状态执行 render :nothing => true。另一种方法是不使用 render,而是使用 head :no_content

    【讨论】:

      猜你喜欢
      • 2015-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多