Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在面向服务的环境中播种rails数据库_Ruby On Rails_Database_Ruby On Rails 3_Database Design_Soa - Fatal编程技术网

Ruby on rails 在面向服务的环境中播种rails数据库

Ruby on rails 在面向服务的环境中播种rails数据库,ruby-on-rails,database,ruby-on-rails-3,database-design,soa,Ruby On Rails,Database,Ruby On Rails 3,Database Design,Soa,关于在多个服务中植入rails应用程序数据库的一点思考练习 安装程序 例如,考虑一个由4个服务(Rails应用程序)组成的超级简化的例子,它通过客户端的GEM通信,并且每一个都公开一个基本的API。 AuthService - (user_id, password) PropertyService (user_id, property_id, address) UserService (user_id, user_info) MortgageService - (property_id,

关于在多个服务中植入rails应用程序数据库的一点思考练习

安装程序

例如,考虑一个由4个服务(Rails应用程序)组成的超级简化的例子,它通过客户端的GEM通信,并且每一个都公开一个基本的API。

AuthService - (user_id, password)

PropertyService (user_id, property_id, address)

UserService (user_id, user_info)

MortgageService - (property_id, mortgage_id, current_cost_of_mortgage)
基本上,一个用户有许多财产,每个财产都有抵押。很简单

每个服务还有一个客户端,它可以访问哪些字段,但访问权限受到明显限制。因此,作为一种填充其服务的机制,它不是非常可行(除非您将其分解?)

问题:
当作为一个整体对其进行种子设定时,您显然希望在属性服务中引用的任何用户也存在于auth服务中,类似地,对于其他服务关系也是如此

用样本数据为这些服务植入种子,使它们都匹配的最佳方式是什么

考虑的潜在方法
  • 为每个服务创建硬固定装置
  • 为每个服务创建一个数据库转储并直接导入它
  • 使用Factory Girl并以某种方式找出如何同步ID
  • Factory girl将是最好的,因为它可以让我很容易地更改种子数据,并添加更多/更少的数据而不会出现问题。我就是不知道该怎么做


    任何问题,只要开枪,真的有兴趣听到,如果有人正在做这样的事情,或已经尝试过,他们是如何管理它

    “您显然希望您在属性服务中引用的任何用户也存在于身份验证服务中”-这似乎是您应该突破到它自己的服务中的东西,一个
    UserService
    ,如果您愿意的话。必须在重复的数据存储之间同步ID对我来说是一个警告信号。对不起,我可能不是很清楚。更新了我的例子,你能再看一看吗?例如,需要id才能调用属性服务以获取用户的所有属性?