代码之家  ›  专栏  ›  技术社区  ›  Neil Middleton

Rails 3返回HTTP 406不可接受?

  •  45
  • Neil Middleton  · 技术社区  · 15 年前

    我有以下控制器代码:

      def create
        @admin = Admin.new(params[:admin])
        respond_to do |format|
          if @admin.save
            redirect_to(@admin, :notice => 'Admin was successfully created.')
          else
            render :action => "new"
          end
        end
      end
    
      def update
        @admin = Admin.find(params[:id])
        respond_to do |format|
          if @admin.update_attributes(params[:admin])
            redirect_to(admin_admins_path, :notice => 'Admin was successfully updated.')
          else
            render :action => "edit"
          end
        end
      end
    

    以及以下路线:

               admin_admins GET    /admin/admins(.:format)            {:action=>"index", :controller=>"admin/admins"}
               admin_admins POST   /admin/admins(.:format)            {:action=>"create", :controller=>"admin/admins"}
            new_admin_admin GET    /admin/admins/new(.:format)        {:action=>"new", :controller=>"admin/admins"}
           edit_admin_admin GET    /admin/admins/:id/edit(.:format)   {:action=>"edit", :controller=>"admin/admins"}
                admin_admin GET    /admin/admins/:id(.:format)        {:action=>"show", :controller=>"admin/admins"}
                admin_admin PUT    /admin/admins/:id(.:format)        {:action=>"update", :controller=>"admin/admins"}
                admin_admin DELETE /admin/admins/:id(.:format)        {:action=>"destroy", :controller=>"admin/admins"}
    

    3 回复  |  直到 15 年前
        1
  •  81
  •   gertas    15 年前

    删除 respond_to do |format| 阻碍。因为您没有指定响应的格式,例如。 format.html { #your code here } . respond_to 如何正确使用。

        2
  •  10
  •   ryanjones    13 年前

    我有一个类似的错误,我的控制器只响应JSON。我还需要它对HTML做出响应,以便测试正常工作(这才有意义):

    class AdsController < ApplicationController
      respond_to :json, :html
    

        3
  •  0
  •   sandre89    7 年前

    我开始有这个问题后,部署在生产,即使是艰难的一切都很好地工作在发展。

    在浪费了15分钟之后,我终于发现 .

    tail -f log/production.log 在服务器上显示: FATAL -- : ActionController::UnknownFormat (SomeController#index is missing a template for this request format and variant.

    在开发过程中没有发生错误,因为很明显,视图文件存在。