use*_*426 5 rspec ruby-on-rails ruby-on-rails-4
最近转移到Rails 4并得到我之前没有得到的错误.我正在尝试使用Capybara/Rspec测试我正在制作的表格.
当我单击表单上的按钮时,我得到的错误是:
Failure/Error: find(".submit.button").click
ActionController::UnknownFormat:
ActionController::UnknownFormat
# ./app/controllers/office_listings_controller.rb:32:in `create'
# ./spec/features/office_listings_spec.rb:78:in `block (3 levels) in <top (required)>'
Run Code Online (Sandbox Code Playgroud)
它指向我的控制器,看起来像:
def create
selected_amenities = params[:amenities] || [] # empty list if no amenities checked
@office_listing = OfficeListing.new(params[:office_listing])
@office_listing.broker = current_broker
p current_broker
@office_listing.neighborhood = Neighborhood.find(params[:neighborhood_id])
p @office_listing.neighborhood
if @office_listing && @office_listing.save!
@path = city_neighborhood_office_listing_path(@office_listing, :city_id => @office_listing.neighborhood.city.id, :neighborhood_id => @office_listing.neighborhood.id)
create_amenities(@office_listing, selected_amenities)
respond_to do |format|
format.js
end
else
@failure = "Unable to create office :-("
respond_to do |format|
format.js
end
end
end
Run Code Online (Sandbox Code Playgroud)
并且它不喜欢format.js行,即使我有一个create.js.erb文件,它在我实际运行页面时被渲染.
不明白为什么实际页面正在运行但我的测试失败了.
任何想法将不胜感激!!
小智 14
我遇到了类似的问题:
post :duplicate, id: patient.media.first.id
Run Code Online (Sandbox Code Playgroud)
产生了同样的错误:
Failure/Error: post :duplicate, id: patient.media.first.id
ActionController::UnknownFormat:
ActionController::UnknownFormat
Run Code Online (Sandbox Code Playgroud)
我通过在post调用中添加格式来修复它:
post :duplicate, id: patient.media.first.id, format: :js
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4756 次 |
| 最近记录: |