Javascript ParksController#create缺少此请求格式和变体的模板。request.formats:[";text/html";]request.variant:[]
我正在创建一个带有模态的公园。当我不在表单中保存图片时,一切似乎都正常。当我添加图片并尝试创建/保存时,图片会被保存,但我会收到一条错误消息,提示:Javascript ParksController#create缺少此请求格式和变体的模板。request.formats:[";text/html";]request.variant:[],javascript,ruby-on-rails,activerecord,Javascript,Ruby On Rails,Activerecord,我正在创建一个带有模态的公园。当我不在表单中保存图片时,一切似乎都正常。当我添加图片并尝试创建/保存时,图片会被保存,但我会收到一条错误消息,提示: ParksController#create is missing a template for this request format and variant. request.formats: ["text/html"] request.variant: [] "\nrequest.variant: #{request.variant.ins
ParksController#create is missing a template for this request format and variant. request.formats: ["text/html"] request.variant: []
"\nrequest.variant: #{request.variant.inspect}"
raise ActionController::UnknownFormat, message
elsif interactive_browser_request?
message = "#{self.class.name}\##{action_name} is missing a template " \
"for this request format and variant.\n\n" \
我忽略了什么,但看不到什么
控制器
class ParksController < ApplicationController
skip_before_action :verify_authenticity_token
after_action :verify_authorized
def new
@park = current_user.parks.build
respond_to do |format|
# format.html { redirect_to root_url, alert: 'Page not accessible' }
format.html
format.js
end
authorize @park
end
def create
@park = current_user.parks.create(park_params)
authorize @park
respond_to do |format|
if @park.save
format.js
format.html
# end
else
format.js{render 'new'}
end
end
end
class ParksController
创建操作后,您没有重定向到其他视图。您在那里响应html,但不使用它做任何事情。通常在创建之后,用户被重定向到索引视图。我认为,如果您向html响应传递一个块并重定向,错误就会自行解决
即:
此外,如果@park.save
...
respond_to :html { redirect_to index_path }
...