mongodbで、Ruby on Rails「移行」ツールの使い方
概要
Ruby on Railsでは通常SQLiteをデータベースとして使用します。そのため、Migrationと呼ばれるRailsの特別なプロパティが機能します。しかし、Railsのデータベースとして「mongodb」を使用すると、dbディレクトリにMigrateフォルダーがないことがわかります。 mongodbを使用するときにレールでこの移行プロパティを使用する方法はありますか。
解決策
ここのドキュメントによると、 db:merge: は依存関係の目的でのみ存在しますが、実際には何も行いません。 ただし、使用している Rails のバージョン、プロジェクトがどのように設定されているか、そして mongodb のみを使用するつもりかどうかがわからないため、明確に記載されている場合はすべての前提条件を付けて、両方の可能性のプロセスを最初から説明します。
このアプローチは、mongodb を単独で使用することを前提としています。
モデル、足場などの Rails ジェネレーターは Mongoid によってオーバーライドされました。作成するモデルや足場などは、モデル フォルダー内の ApplicationRecord から継承するのではなく、Mongoid::Document モジュールを含むクラスを作成します。
たとえば、実行するとき
Rails G モデル person first_name last_name email_address
ファイル app/models/person.rb を開いた場合
わかるでしょう
class Person
include Mongoid::Document
field :first_name, type: String
field :last_name, type: String
field :email_address, type: String
end