2014-10-17 26 views
0

我在轨道上工作4应用程序,我有很多项目,每个项目都有很多任务。唯一标识符中的每个项目中的每个任务,但不能跨越所有项目(多租户的问题)

我的问题是我想唯一标识项目中的每个任务,比如想要给出前两个字符,然后是任务ID,所以它变成xy-1,xy-2,但是作为第二个项目的任务表中存储的所有任务从AB-3开始,因为这个任务的id为3

我要的是应该从AB-1开始,因为它是该项目的第一项任务。

由于可以删除任务,因此不应该存在删除问题。

请帮帮我。 感谢

回答

2

你可以做的是建立在项目模型的一些“增量”字段,并设置为整数类型。例如,您将项目xy和增量字段设置为0(假设0是默认值)。当您想为该项目创建任务时,只需读取增量字段(此情况为0),添加其1(0 + 1),然后再次保存项目。您可以将该值用于任务ID并创建一些内容:xy-1。它应该看起来像:

project = Project.find(10) 
curr_inc = project.increment 
curr_inc += 1 
project.increment = curr_inc 
project.save 
task_id = "#{project.code}-#{curr_inc}" 
+0

谢谢!它节省了我的一天 – 2014-10-17 07:44:43

相关问题