1

我正在与多租户Ruby on Rails应用程序以及另一名开发人员一起工作。我拉他的分支,并收到新的迁移文件。我跑耙db:迁移。我访问该控制器的索引,并得到未定义的错误。PG :: UndefinedTable:错误:关系不存在Multitenant Rails应用程序

经过一番研究,我了解到我在创建租户后进行了迁移。 (参考:PG::UndefinedTable: ERROR: relation "..." does not exist),我也明白,rake db:reset在开发中解决了这个问题。但做一个重置清除我的数据,我很好,在开发中。

我担心的是,这是如何在生产中起作用的?当我发布到生产...这是否意味着对于现有租户,我无法运行迁移并发布新功能?

有没有永久的解决方案呢?

回答

2

如果设置在您的配置文件中的以下行,

config.tenant_names = lambda{ Customer.pluck(:tenant_name) } 

当您运行rake db:migrate所有现有租户的架构将被迁移。

+0

谢谢队友!错过了那一寸细节。没有足够的积分来upvote,但肯定值得一个。 –

+0

我已经投了你的问题,所以你会有一些点来投票回答你的后面的问题:-) – Jayaprakash

+0

非常感谢! –

相关问题