Ruby on Rails и MongoDB

У меня есть новая установка Ruby on Rails, где я вижу стартовую страницу по умолчанию.

Я следовал этому руководству, чтобы установить MongoDB в Rails.

Теперь я получаю эту ошибку при запуске rake test:

**Notice: C extension not loaded. This is required for optimum MongoDB Ruby driver performance.
  You can install the extension as follows:
  gem install bson_ext

  If you continue to receive this message after installing, make sure that the
  bson_ext gem is in your load path and that the bson_ext and mongo gems are of the same version.

Я установил гем bson_ext, что означает, что теперь bson_ext отсутствует в моем пути загрузки или что камни не той же версии.

Где находится путь загрузки? Как я могу это изменить? Как я могу проверить, являются ли драгоценные камни той же версией?

2 ответа

Решение

Если вы используете Ruby on Rails 3+, вы должны убедиться, что в вашем Gemfile есть ссылка на гем bson_ext.

Откройте Gemfile (в корневом каталоге вашего приложения rails) и добавьте строку, которая говорит: bson_ext

У тебя должно быть:

gem mongo
gem bson_ext

Также вот еще некоторая информация из 10gen документации по запуску тестов в рельсах:

Выполнение тестов Небольшая модификация необходима для того, чтобы запустить тест рейка (спасибо Джону П. Вуду). Создайте файл lib/tasks/mongo.rake, содержащий следующее:

namespace :db do
  namespace :test do
    task :prepare do
      # Stub out for MongoDB
    end
  end
end

Теперь различные тестовые задания будут работать правильно. Смотрите сообщение Джона для более подробной информации.

Они также ссылаются на пост Джона Вуда, что довольно хорошо.

Другие вопросы по тегам