gpt4 book ai didi

ruby-on-rails - 使用 Apartment gem 为新模式播种数据?

转载 作者:太空宇宙 更新时间:2023-11-03 17:48:11 24 4
gpt4 key购买 nike

如何在使用 Apartment gem 进行范围界定的 Multi-Tenancy 应用程序中播种新租户?

我将以下内容添加到 seeds.rb,但它似乎不适用于 apartment:

tenants = Tenant.create([
{
name: 'User1',
domain: 'user1'
},
{
name: 'User2',
domain: 'user2'
}
])

即使数据库是空白的,seeds.rb 也会尝试创建模式两次,但在我执行 rake db:seed 时失败并出现此错误:

Apartment::TenantExists: The schema user1 already exists.

最佳答案

Rails rake 为您尝试创建的每个租户/模式运行任务。因此,通过首先检查当前架构是否为公共(public)架构来运行您的创建或播种任务。

像这样的东西就可以了。

if Apartment::Tenant.current == 'public'
Apartment::Tenant.create('tenant1')
Apartment::Tenant.create('tenant2')
end

关于ruby-on-rails - 使用 Apartment gem 为新模式播种数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30680417/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com