PG::UndefinedTable: ERROR: relation does not exist for Multitenant Rails App
PG::UndefinedTable: ERROR: relation does not exist for Multitenant Rails App
我正在与另一位开发人员一起在 Rails 应用程序上开发多租户 Ruby。我拉了他的 b运行ch 并收到了新的迁移文件。我运行耙db:migrate。我访问了那个控制器的索引,我得到了未定义的错误。
经过一些研究,我了解到我 运行 在创建租户后进行迁移。 (参考:)而且我也了解到 rake db:reset 在开发中解决了这个问题。但是重置会清除我的数据,这在开发中我很好。
我担心的是,这在生产中如何运作?当我发布到生产环境时...这是否意味着对于现有租户我不能 运行 迁移和发布新功能?
是否有永久解决方案?
如果您在配置文件中设置以下行,
config.tenant_names = lambda{ Customer.pluck(:tenant_name) }
当您 运行 rake db:migrate
时,将迁移所有现有租户的架构。
我正在与另一位开发人员一起在 Rails 应用程序上开发多租户 Ruby。我拉了他的 b运行ch 并收到了新的迁移文件。我运行耙db:migrate。我访问了那个控制器的索引,我得到了未定义的错误。
经过一些研究,我了解到我 运行 在创建租户后进行迁移。 (参考:
我担心的是,这在生产中如何运作?当我发布到生产环境时...这是否意味着对于现有租户我不能 运行 迁移和发布新功能?
是否有永久解决方案?
如果您在配置文件中设置以下行,
config.tenant_names = lambda{ Customer.pluck(:tenant_name) }
当您 运行 rake db:migrate
时,将迁移所有现有租户的架构。