在mongodb中,如何使用ruby on rails“迁移”工具

oprakyz7  于 2023-10-16  发布在  Go
关注(0)|答案(1)|浏览(87)

在ruby on rails中,通常使用SQLite作为database.so,rails的一个特殊属性称为migration。但是当我们使用“mongodb”作为rails中的数据库时。我看到db目录中没有migrate文件夹。在使用mongodb的时候,有没有办法在rails中使用这个迁移属性。

2hh7jdfx

2hh7jdfx1#

根据这里的文档,db:migrate:只是出于依赖性的目的而进行测试,但实际上并不做任何事情。然而,因为我不确定你使用的是什么版本的rails,你的项目是如何设置的,如果你打算只使用mongodb,我将从头开始描述这两种可能性的过程,如果有任何明确的假设的话。
此方法假定您希望单独使用mongodb
1.使用--skip-active-record开关创建Rails应用。
1.从Gemfile中删除sqlite3
1.将gem 'mongoid'添加到Gemfile
1.运行bundle
1.运行rails g mongoid:config
1.检查你的application.rb文件,并确保在'类Application'中有这行Mongoid.load! './config/mongoid.yml'它有时在生成配置时不包含,但需要使用Mongoid

  1. Mongoid准备就绪。
    modelscaffold等的Rails生成器已被Mongoid覆盖。你创建的任何模型,脚手架等都将创建包含Mongoid::Document模块的类,而不是从模型文件夹中的ApplicationRecord继承。
    例如,当你跑步时,
    rails g model 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

相关问题