Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby MongoMapper:未定义的方法'each';至于;StandardFormBuilder";:一串_Ruby_Mongomapper_Padrino - Fatal编程技术网

Ruby MongoMapper:未定义的方法'each';至于;StandardFormBuilder";:一串

Ruby MongoMapper:未定义的方法'each';至于;StandardFormBuilder";:一串,ruby,mongomapper,padrino,Ruby,Mongomapper,Padrino,我正在将MongoMapper与Padrino一起使用,在执行任何Padrino任务时遇到问题。我几乎在每项任务中都会遇到这个错误 ethan@tardis:/var/www/sakura$ padrino rake -T => Executing Rake -T ... /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/mongo_mapper-0.8.6/lib/mongo_mapper/plugins/modifiers.rb:19:in `set

我正在将MongoMapper与Padrino一起使用,在执行任何
Padrino
任务时遇到问题。我几乎在每项任务中都会遇到这个错误

ethan@tardis:/var/www/sakura$ padrino rake -T
=> Executing Rake -T ...
/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/mongo_mapper-0.8.6/lib/mongo_mapper/plugins/modifiers.rb:19:in `set': undefined method `each' for "StandardFormBuilder":String (NoMethodError)
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-helpers-0.9.29/lib/padrino-helpers.rb:33:in `registered'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/sinatra-1.2.6/lib/sinatra/base.rb:1200:in `block in register'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/sinatra-1.2.6/lib/sinatra/base.rb:1198:in `each'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/sinatra-1.2.6/lib/sinatra/base.rb:1198:in `register'
    from /var/www/sakura/app/app.rb:3:in `<class:Sakura>'
    from /var/www/sakura/app/app.rb:1:in `<top (required)>'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/reloader.rb:128:in `require'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/reloader.rb:128:in `safe_load'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:140:in `block in require_dependencies'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:138:in `each'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:138:in `require_dependencies'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/mounter.rb:125:in `locate_app_object'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/mounter.rb:21:in `initialize'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/mounter.rb:189:in `new'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/mounter.rb:189:in `mount'
    from /var/www/sakura/config/apps.rb:34:in `<top (required)>'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/reloader.rb:128:in `require'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/reloader.rb:128:in `safe_load'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:140:in `block in require_dependencies'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:138:in `each'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:138:in `require_dependencies'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:56:in `block in load!'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:56:in `each'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:56:in `load!'
    from /var/www/sakura/config/boot.rb:29:in `<top (required)>'
    from /home/ethan/.rvm/rubies/ruby-1.9.2-head/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
    from /home/ethan/.rvm/rubies/ruby-1.9.2-head/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/cli/base.rb:51:in `block in rake'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/cli/base.rb:130:in `capture'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/cli/base.rb:51:in `rake'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/thor-0.14.6/lib/thor/task.rb:22:in `run'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/thor-0.14.6/lib/thor/invocation.rb:118:in `invoke_task'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/thor-0.14.6/lib/thor.rb:263:in `dispatch'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/thor-0.14.6/lib/thor/base.rb:389:in `start'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/bin/padrino:8:in `<top (required)>'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/bin/padrino:19:in `load'
    from /home/ethan/.rvm/gems/ruby-1.9.2-head/bin/padrino:19:in `<main>'
ethan@tardis:/var/www/sakura$padrino-rake-T
=>正在执行Rake-T。。。
/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/mongo_-mapper-0.8.6/lib/mongo_-mapper/plugins/modifiers.rb:19:in`set':未定义的“StandardFormBuilder”方法`each':String(NoMethodError)
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-helpers-0.9.29/lib/padrino-helpers.rb:33:in `已注册'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/sinatra-1.2.6/lib/sinatra/base.rb:1200:在“寄存器中的块”中
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/sinatra-1.2.6/lib/sinatra/base.rb:1198:in'each'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/sinatra-1.2.6/lib/sinatra/base.rb:1198:in“register”中
from/var/www/sakura/app/app.rb:3:in`'
from/var/www/sakura/app/app.rb:1:in`'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/reloader.rb:128:in'require'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/reloader.rb:128:in“安全加载”
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:140:在“请求依赖项中的块”中
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:138:in'each'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:138:in'require_dependencies'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/mounter.rb:125:在“定位应用程序对象”中
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/mounter.rb:21:in'initialize'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/mounter.rb:189:in“new”
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/mounter.rb:189:in“mount”
from/var/www/sakura/config/apps.rb:34:in`'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/reloader.rb:128:in'require'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/reloader.rb:128:in“安全加载”
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:140:在“请求依赖项中的块”中
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:138:in'each'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:138:in'require_dependencies'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:56:in“加载中的块!”
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:56:in'each'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/loader.rb:56:in'load!'
从/var/www/sakura/config/boot.rb:29:in`'
from/home/ethan/.rvm/rubies/ruby-1.9.2-head/lib/ruby/site\u ruby/1.9.1/rubygems/custom\u require.rb:55:in'require'
from/home/ethan/.rvm/rubies/ruby-1.9.2-head/lib/ruby/site\u ruby/1.9.1/rubygems/custom\u require.rb:55:in'require'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/cli/base.rb:51:in'block in rake'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/cli/base.rb:130:在“捕获”中
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/lib/padrino-core/cli/base.rb:51:in'rake'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/thor-0.14.6/lib/thor/task.rb:22:in'run'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/thor-0.14.6/lib/thor/invocation.rb:118:in'invoke_task'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/thor-0.14.6/lib/thor.rb:263:in'dispatch'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/thor-0.14.6/lib/thor/base.rb:389:in'start'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/gems/padrino-core-0.9.29/bin/padrino:8:in`'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/bin/padrino:19:in'load'
from/home/ethan/.rvm/gems/ruby-1.9.2-head/bin/padrino:19:in`'

我在多个Ruby版本中进行了尝试,得到了类似的结果。这是Sinatra、MongoMapper的错误还是什么?

似乎是ActiveSupport的问题

在您的文件中添加:

gem "mongo_mapper", "~> 0.9.1"

我的要点得到了回应,他认为这是因为我将模型命名为我的Padrino应用程序。我现在不在电脑前,但我也可以试试你的解决方案。