@kyanny's blog

My thoughts, my life. Views/opinions are my own.

irb/pry から MongoMapper を使うと NameError: uninitialized constant ActiveModel::Serializers::Xml が出るときの対処法

gem 'activemodel', '4.2.9'
require 'active_model'
require 'mongo_mapper'

MongoMapper.database = 'testing'

class Foo
  include MongoMapper::Document
end

Foo.destroy_all
Foo.create

p [Foo.count, 'good']

NameError: uninitialized constant ActiveModel::Serializers::Xml in MongoMapper · GitHub

Rails アプリケーション(っぽい)ディレクトリ内で rails コマンドを実行すると rails new --help の結果が表示されてしまうときの対処法

bin/rails または script/rails が無いのが原因。

このファイルを作る rake タスクを実行すればよい。

# Rails 4
$ bundle exec rake rails:update:bin

# Rails 5
$ bundle exec rake app:update:bin

肝心の処理をしているのはここ https://github.com/rails/rails/blob/master/railties/lib/rails/app_loader.rb


“Bundler-generated rails binstub” というのを作らせるには

$ bundle binstubs railties