gpt4 book ai didi

mysql - Rails 4应用程序中多个数据库之间的切换

转载 作者:行者123 更新时间:2023-11-29 22:03:34 25 4
gpt4 key购买 nike

我目前正在创建一个 Rails 应用程序,我必须在多个数据库之间切换。这些数据库具有相同的表,但每个表代表不同的酒店(即:hotel1 有database1,hotel2 有database2 等等)。发生这种情况是因为每个客户都是我们业务的不同客户。现在这是棘手的部分:某些用户可能有权访问多个酒店(假设有一位链式店经理可以查看与该链式店关联的所有酒店的状态)。我见过不同的线程,其中 Rails 连接到多个数据库,但没有看到我需要实现的数据库数量(业务正在增长)。另外,这些数据库位于同一服务器中,因此我知道之间的切换不应该是一件复杂的事情。

注意事项:

  1. 客户端的数据库(database1、database2 等)不是 Rails 数据库。
  2. 每个客户端的数据库都有相同的表设计,唯一改变的是数据库的名称
  3. 与 Rails 应用程序关联的主数据库只有两个表(用户、酒店)以及实现 devise、rolify 和 cancancan gems 所需的表。

最大的问题是:由于这些数据库不是 Rails 数据库,并且我需要对每个数据库执行查询,那么执行此操作的“rails 方式”是什么,使我能够在将来升级解决方案? (将来添加更多查询)。我应该在我的应用程序中将这些非 Rails 数据库建模为 Poros 吗?有没有一种设计模式可以帮助我解决这个问题?

最佳答案

请查看以下 gem apartmentact_as_tenant 。您的要求与这些 gem 提供的功能非常相似,除了某些用户可能可以访问多个酒店,但我认为使用这些 gem 仍然可以实现这一点

关于mysql - Rails 4应用程序中多个数据库之间的切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32381214/

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