Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.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 关于Sinatra的Mongoid问题_Ruby_Mongodb_Sinatra_Mongoid_Unicorn - Fatal编程技术网

Ruby 关于Sinatra的Mongoid问题

Ruby 关于Sinatra的Mongoid问题,ruby,mongodb,sinatra,mongoid,unicorn,Ruby,Mongodb,Sinatra,Mongoid,Unicorn,我正试图在流浪汉和独角兽+Mongoid上运行Sinatra应用程序。 这是一个简单的Hello-world代码,只是我在这里尝试将MongoDB部署到其中。 以下是一些代码: models.rb class Chat include Mongoid::Document field :author, type: String field :text, type: String end main.rb require "rubygems" require "sinatra

我正试图在流浪汉和独角兽+Mongoid上运行Sinatra应用程序。 这是一个简单的Hello-world代码,只是我在这里尝试将MongoDB部署到其中。 以下是一些代码:

models.rb

class Chat
    include Mongoid::Document
    field :author, type: String
    field :text, type: String
end
main.rb

require "rubygems"
require "sinatra"
require "logger"
require "unicorn"
require "mongoid"
require_relative './models.rb'

Mongoid.load!("/vagrant/workspace/config/mongoid.yml", :development)

class MainApp < Sinatra::Base
    get '/' do
        "Hello World"
    end
    get '/chat/:field' do
        content_type :author
        hito = Chat.first
        hito ? "#{hito.__send__ params[:field]}" : "nil"
    end
end
蒙哥德

development:
    sessions:
        default:
            database: mydb
                hosts:
                - localhost:27017
当我尝试时,出现以下错误:

bundle exec unicorn -c ./unicorn.rb -D
stderr日志显示:

/home/vagrant/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/psych.rb:369:in `parse':     (<unknown>): mapping values are not allowed in this context at line 5 colum    n 22 (Psych::SyntaxError)
from /home/vagrant/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/psych.rb:369:in `parse_stream'
from /home/vagrant/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/psych.rb:317:in `parse'
from /home/vagrant/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/psych.rb:244:in `load'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/mongoid-3.1.6/lib/mongoid/config/environment.rb:40:in `load_yaml'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/mongoid-3.1.6/lib/mongoid/config.rb:89:in `load!'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/mongoid-3.1.6/lib/mongoid.rb:163:in `load!'
from /vagrant/workspace/lib/main.rb:8:in `<top (required)>'
from config.ru:3:in `require'
from config.ru:3:in `block in <main>'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `instance_eval'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize'
from config.ru:1:in `new'
from config.ru:1:in `<main>'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn.rb:48:in `eval'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn.rb:48:in `block in builder'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:760:in `call'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:760:in `build_app!'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:137:in `start'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/bin/unicorn:126:in `<top (required)>'
from /home/vagrant/.rvm/gems/ruby-2.1.0/bin/unicorn:23:in `load'
from /home/vagrant/.rvm/gems/ruby-2.1.0/bin/unicorn:23:in `<main>'
from /home/vagrant/.rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in `eval'
from /home/vagrant/.rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in `<main>'

from config.ru:3:in
block in'`块在哪里?请同时提供它。添加了config.ru文件。我看不到这里的块。。。它在哪里?config.ru只有3行…main.rb中有什么?
/home/vagrant/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/psych.rb:369:in `parse':     (<unknown>): mapping values are not allowed in this context at line 5 colum    n 22 (Psych::SyntaxError)
from /home/vagrant/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/psych.rb:369:in `parse_stream'
from /home/vagrant/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/psych.rb:317:in `parse'
from /home/vagrant/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/psych.rb:244:in `load'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/mongoid-3.1.6/lib/mongoid/config/environment.rb:40:in `load_yaml'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/mongoid-3.1.6/lib/mongoid/config.rb:89:in `load!'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/mongoid-3.1.6/lib/mongoid.rb:163:in `load!'
from /vagrant/workspace/lib/main.rb:8:in `<top (required)>'
from config.ru:3:in `require'
from config.ru:3:in `block in <main>'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `instance_eval'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize'
from config.ru:1:in `new'
from config.ru:1:in `<main>'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn.rb:48:in `eval'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn.rb:48:in `block in builder'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:760:in `call'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:760:in `build_app!'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:137:in `start'
from /home/vagrant/.rvm/gems/ruby-2.1.0/gems/unicorn-4.8.2/bin/unicorn:126:in `<top (required)>'
from /home/vagrant/.rvm/gems/ruby-2.1.0/bin/unicorn:23:in `load'
from /home/vagrant/.rvm/gems/ruby-2.1.0/bin/unicorn:23:in `<main>'
from /home/vagrant/.rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in `eval'
from /home/vagrant/.rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in `<main>'
require 'sinatra'
require './lib/main.rb'
run Sinatra::Application