相关疑难解决方法(0)

Rails/javascript:"参数键太多" - 什么是规范化表单数据的好方法?

我正在使用rails 3.1.3.我有一个有很多领域的表格.提交表单时,我收到此错误

ERROR RangeError: exceeded available parameter key space
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/utils.rb:99:in `block in parse_nested_query'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/utils.rb:93:in `each'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/utils.rb:93:in `parse_nested_query'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/request.rb:302:in `parse_query'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/request.rb:190:in `POST'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/methodoverride.rb:15:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/runtime.rb:17:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/activesupport-3.1.3/lib/active_support/cache/strategy/local_cache.rb:72:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/lock.rb:15:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/actionpack-3.1.3/lib/action_dispatch/middleware/static.rb:53:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/railties-3.1.3/lib/rails/engine.rb:456:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/content_length.rb:14:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/railties-3.1.3/lib/rails/rack/debugger.rb:21:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/railties-3.1.3/lib/rails/rack/log_tailer.rb:14:in `call'
    /home/james/.rvm/gems/ruby-1.9.3-p0/gems/rack-1.3.6/lib/rack/handler/webrick.rb:59:in `service'
    /home/james/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/webrick/httpserver.rb:138:in `service'
    /home/james/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/webrick/httpserver.rb:94:in `run'
    /home/james/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/webrick/server.rb:191:in `block in start_thread'
Run Code Online (Sandbox Code Playgroud)

显然,提交的k/v对太多了.什么是解决这个问题的好方法?我想我会用javascript截取表单的提交,然后以某种方式对其进行编码,以便只有一个k/v对,然后将其解码为app服务器上的普通params哈希.任何有关此方法的指导方针或更好的方法都将受到赞赏.

javascript forms encoding webforms ruby-on-rails

11
推荐指数
1
解决办法
4990
查看次数

错误:超出可用参数键空间

为了解决这个问题,我找到了增加Rack密钥空间限制的答案

从此链接
获取错误"超出可用参数密钥空间"?

它说增加限制为Rack :: Utils.key_space_limit = 262144

我的生产服务器仍然遇到同样的问题我可以将限制增加到更大的值吗?

我在下面的链接中找到了类似的答案, http://myrailsway.blogspot.in/2012/04/rangeerror-exceeded-available-parameter.html

我可以继续这个更大的价值吗?

ruby-on-rails

1
推荐指数
1
解决办法
2253
查看次数

标签 统计

ruby-on-rails ×2

encoding ×1

forms ×1

javascript ×1

webforms ×1