2014-04-29 38 views
1

我正在构建一个可以存储和管理医生数据的软件。我想问一些有关我想要部署项目的问题。起初,我想为每个客户有不同的django实例。每个clinet都有他自己的数据库,并独立运行其他数据库。但我不确定我是否可以自动执行此过程,因为对于每个实例,我需要拥有不同的数据库,不同的密码,不同的数据库用户名,我不确定它是否可以在创建django项目的每个新实例时自动执行。或者是以某种方式。设想以下场景一个django实例一个数据库vs不同的django实例

User pays -> After successfull payment -> DB(MySQL) is created -> 
django instance is created -> 
somehow django settings file is updated with db credentials -> syncdb is run 

并且此过程必须自动化。有一个分贝和分离模型(带外键等)是否更好?或者一个统一的数据库不是一个好的解决方案(安全方面)?你怎么看?

+0

管理不同的情况下会涉及到,如果出现错误,其可能失败不同步骤的繁琐的任务。我的建议是通过制作不同的用户来使用单个数据库和单独的客户端。 –

+0

会导致安全问题吗? – Apostolos

+0

你担心什么安全问题?您可以使用不同的权限在数据库中创建不同的表。 –

回答

1
+0

我将着眼于它..我是否需要我的每个模型都属于使用外来的单独租户吗?......没有从教程中获得它。 – Apostolos

+0

因为你的表结构会变成类似“SchemaA.TableA”,“SchemaB.TableA”的东西,所以只要你得到了“Schema”的权利,我认为可能不需要外键。 – chitak

+0

我会试图弄清楚它......如果你使用单独的数据库,它不会解释它如何创建新的数据库。 – Apostolos

相关问题