ruby-on-rails – Rails寻找JSON请求的模板
发布时间:2020-12-16 20:11:18 所属栏目:百科 来源:网络整理
导读:在我的路线.我有: resources :workouts 在我的训练控制器我有: def show respond_to do |format| format.html format.json { render :json = "Success" } endend 但是当我去/workouts/1.json时,我收到以下内容: Template is missing Missing template wor
在我的路线.我有:
resources :workouts 在我的训练控制器我有: def show respond_to do |format| format.html format.json { render :json => "Success" } end end 但是当我去/workouts/1.json时,我收到以下内容:
这似乎表明格式是应该的,但它仍在搜索视图.相同的代码在其他控制器中功能相同的设置正常.另外,对于html视图来说,去/ workouts / 1似乎工作得很好,虽然当格式化的格式被删除时,它也正确地渲染了html视图. 解决方法
看看渲染的源代码
elsif options.include?(:json) json = options[:json] json = ActiveSupport::JSON.encode(json) unless json.is_a?(String) json = "#{options[:callback]}(#{json})" unless options[:callback].blank? response.content_type ||= Mime::JSON render_for_text(json,options[:status]) 注意第三行.如果值为:json是一个字符串,那么render将不会自动为该值调用to_json. 所以值将保持为字符串,渲染将继续搜索模板. 要修复,提供一个有效的哈希甚至为了尝试的目的. format.json { render :json => {:message => "Success"} } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |