Ruby on rails ActionController::Rails事务的未知信息格式

Ruby on rails ActionController::Rails事务的未知信息格式,ruby-on-rails,Ruby On Rails,我一直在谷歌上搜索,绞尽脑汁想这件事,但还是找不出问题所在 我要走了 ActionController::未知信息格式 我试图通过一个事务为用户创建多个测验 到目前为止我一直在尝试的。我做得对吗 quick.rb def save_to_multiple_users(user_ids) transaction do user_ids.each do |user_id| new_quiz = self.dup new_quiz.user_id

我一直在谷歌上搜索,绞尽脑汁想这件事,但还是找不出问题所在

我要走了

ActionController::未知信息格式

我试图通过一个事务为用户创建多个测验

到目前为止我一直在尝试的。我做得对吗

quick.rb

  def save_to_multiple_users(user_ids)
    transaction do
      user_ids.each do |user_id|
        new_quiz = self.dup
        new_quiz.user_id = user_id
        new_quiz.save!
      end
      return true
    end
    rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotSaved => exception
      errors.add :base, exception.message + "for one or more quizzes"
      return false
  end
测验(u controller.rb)

  # POST /admin/quizzes
  # POST /admin/quizzes.json
  def create
    quiz_params = quiz_create_params
    quiz_params.delete(:user_ids)
    @quiz = Quiz.new(quiz_params)
    respond_to do |format|
      if @quiz.save_to_multiple_users(quiz_create_params[:user_ids])
        format.html { redirect_to edit_admin_quiz_path(@quiz), notice: 'Quiz was successfully created.' }
        format.json { render :show, status: :created, location: @quiz }
      else
        format.html { render :new }
        format.json { render json: @quiz.errors, status: :unprocessable_entity }
      end
    end
  end
错误日志:

actionpack (4.2.1) lib/action_controller/metal/mime_responds.rb:217:in `respond_to'
app/controllers/admin/quizzes_controller.rb:32:in `create'
actionpack (4.2.1) lib/action_controller/metal/implicit_render.rb:4:in `send_action'
actionpack (4.2.1) lib/abstract_controller/base.rb:198:in `process_action'
actionpack (4.2.1) lib/action_controller/metal/rendering.rb:10:in `process_action'
actionpack (4.2.1) lib/abstract_controller/callbacks.rb:20:in `block in process_action'
activesupport (4.2.1) lib/active_support/callbacks.rb:117:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:117:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'
activesupport (4.2.1) lib/active_support/callbacks.rb:505:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:505:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:92:in `_run_callbacks'
activesupport (4.2.1) lib/active_support/callbacks.rb:776:in `_run_process_action_callbacks'
activesupport (4.2.1) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (4.2.1) lib/abstract_controller/callbacks.rb:19:in `process_action'
actionpack (4.2.1) lib/action_controller/metal/rescue.rb:29:in `process_action'
actionpack (4.2.1) lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'
activesupport (4.2.1) lib/active_support/notifications.rb:164:in `block in instrument'
activesupport (4.2.1) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
activesupport (4.2.1) lib/active_support/notifications.rb:164:in `instrument'
actionpack (4.2.1) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
actionpack (4.2.1) lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
activerecord (4.2.1) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
actionpack (4.2.1) lib/abstract_controller/base.rb:137:in `process'
actionview (4.2.1) lib/action_view/rendering.rb:30:in `process'
actionpack (4.2.1) lib/action_controller/metal.rb:196:in `dispatch'
actionpack (4.2.1) lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
actionpack (4.2.1) lib/action_controller/metal.rb:237:in `block in action'
actionpack (4.2.1) lib/action_dispatch/routing/route_set.rb:74:in `call'
actionpack (4.2.1) lib/action_dispatch/routing/route_set.rb:74:in `dispatch'
actionpack (4.2.1) lib/action_dispatch/routing/route_set.rb:43:in `serve'
actionpack (4.2.1) lib/action_dispatch/journey/router.rb:43:in `block in serve'
actionpack (4.2.1) lib/action_dispatch/journey/router.rb:30:in `each'
actionpack (4.2.1) lib/action_dispatch/journey/router.rb:30:in `serve'
actionpack (4.2.1) lib/action_dispatch/routing/route_set.rb:819:in `call'
warden (1.2.3) lib/warden/manager.rb:35:in `block in call'
warden (1.2.3) lib/warden/manager.rb:34:in `catch'
warden (1.2.3) lib/warden/manager.rb:34:in `call'
rack (1.6.4) lib/rack/etag.rb:24:in `call'
rack (1.6.4) lib/rack/conditionalget.rb:38:in `call'
rack (1.6.4) lib/rack/head.rb:13:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/params_parser.rb:27:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/flash.rb:260:in `call'
rack (1.6.4) lib/rack/session/abstract/id.rb:225:in `context'
rack (1.6.4) lib/rack/session/abstract/id.rb:220:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/cookies.rb:560:in `call'
activerecord (4.2.1) lib/active_record/query_cache.rb:36:in `call'
activerecord (4.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:649:in `call'
activerecord (4.2.1) lib/active_record/migration.rb:378:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (4.2.1) lib/active_support/callbacks.rb:88:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:88:in `_run_callbacks'
activesupport (4.2.1) lib/active_support/callbacks.rb:776:in `_run_call_callbacks'
activesupport (4.2.1) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (4.2.1) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/reloader.rb:73:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
web-console (2.1.3) lib/web_console/middleware.rb:37:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
railties (4.2.1) lib/rails/rack/logger.rb:38:in `call_app'
railties (4.2.1) lib/rails/rack/logger.rb:20:in `block in call'
activesupport (4.2.1) lib/active_support/tagged_logging.rb:68:in `block in tagged'
activesupport (4.2.1) lib/active_support/tagged_logging.rb:26:in `tagged'
activesupport (4.2.1) lib/active_support/tagged_logging.rb:68:in `tagged'
railties (4.2.1) lib/rails/rack/logger.rb:20:in `call'
quiet_assets (1.1.0) lib/quiet_assets.rb:27:in `call_with_quiet_assets'
actionpack (4.2.1) lib/action_dispatch/middleware/request_id.rb:21:in `call'
rack (1.6.4) lib/rack/methodoverride.rb:22:in `call'
rack (1.6.4) lib/rack/runtime.rb:18:in `call'
activesupport (4.2.1) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
rack (1.6.4) lib/rack/lock.rb:17:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/static.rb:113:in `call'
rack (1.6.4) lib/rack/sendfile.rb:113:in `call'
railties (4.2.1) lib/rails/engine.rb:518:in `call'
railties (4.2.1) lib/rails/application.rb:164:in `call'
rack (1.6.4) lib/rack/content_length.rb:15:in `call'
puma (2.11.0) lib/puma/server.rb:507:in `handle_request'
puma (2.11.0) lib/puma/server.rb:375:in `process_client'
puma (2.11.0) lib/puma/server.rb:262:in `block in run'
puma (2.11.0) lib/puma/thread_pool.rb:104:in `call'
puma (2.11.0) lib/puma/thread_pool.rb:104:in `block in spawn_thread'
服务器日志

Started POST "/admin/quizzes.1" for ::1 at 2015-09-16 18:13:05 +0800
Processing by Admin::QuizzesController#create as 
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"lCVtbhqogWUwZ1+lWqWfekws8cH8C/pWUJnPhutVWpyqTV2EU7qHQrs6HIoPj4oC8QHBqa9pXsCuY7FV1yhZjg==", "quiz"=>{"subject_id"=>"1", "category_ids"=>["", "8"], "user_ids"=>["1", "2"], "number_of_questions"=>"1"}, "commit"=>"Start Now"}
  Admin Load (1.0ms)  SELECT  "admins".* FROM "admins" WHERE "admins"."id" = ?  ORDER BY "admins"."id" ASC LIMIT 1  [["id", 1]]
  Category Load (0.8ms)  SELECT  "categories".* FROM "categories" WHERE "categories"."id" = ? LIMIT 1  [["id", 8]]
   (0.8ms)  begin transaction
  User Load (0.9ms)  SELECT  "users".* FROM "users" WHERE "users"."deleted_at" IS NULL AND "users"."id" = ? LIMIT 1  [["id", 1]]
  Subject Load (0.8ms)  SELECT  "subjects".* FROM "subjects" WHERE "subjects"."deleted_at" IS NULL AND "subjects"."id" = ? LIMIT 1  [["id", 1]]
  Question Load (0.6ms)  SELECT questions.*, MIN(category_id) AS category FROM "questions" INNER JOIN "question_categories" ON "question_categories"."question_id" = "questions"."id" WHERE "questions"."deleted_at" IS NULL AND ("question_categories"."category_id" IN (NULL)) GROUP BY questions.id  ORDER BY RANDOM()
   (0.5ms)  rollback transaction
Completed 406 Not Acceptable in 547ms (ActiveRecord: 18.0ms)

ActionController::UnknownFormat (ActionController::UnknownFormat):
  app/controllers/admin/quizzes_controller.rb:32:in `create'


  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/templates/rescues/_source.erb (133.1ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (33.5ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (4.0ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb within rescues/layout (221.1ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/web-console-2.1.3/lib/web_console/templates/_markup.html.erb (1.5ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/web-console-2.1.3/lib/web_console/templates/style.css.erb within layouts/inlined_string (1.2ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/web-console-2.1.3/lib/web_console/templates/_inner_console_markup.html.erb within layouts/inlined_string (1.3ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/web-console-2.1.3/lib/web_console/templates/_prompt_box_markup.html.erb within layouts/inlined_string (1.1ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/web-console-2.1.3/lib/web_console/templates/console.js.erb within layouts/javascript (56.9ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/web-console-2.1.3/lib/web_console/templates/main.js.erb within layouts/javascript (1.1ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/web-console-2.1.3/lib/web_console/templates/error_page.js.erb within layouts/javascript (1.3ms)
  Rendered /Users/henrychua/.rvm/gems/ruby-2.2.0/gems/web-console-2.1.3/lib/web_console/templates/index.html.erb (127.3ms)

问题似乎出在你请求的格式上。您使用
respond\u to
,只处理html和json格式。您对该格式的请求是否失败

如果您的请求是通过ajax进行的,那么您还应该处理
format.js

更新


从更新的日志中,url的结尾有一个
.1
,Rails认为这是一种格式,如.json或.html。检查表单的操作url。

您可以发布完整的错误日志吗?@Pavan我已经编辑了错误日志,谢谢您的回复。您可以在提交表单时发布服务器日志吗?@Pavan我发布了服务器日志,希望对hahaHi Lazarus有所帮助!谢谢你的回答,我的请求是一个普通的html post请求,表单是由rails表单生成的