Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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_Ruby On Rails 3_Validation_Activerecord_Data Consistency - Fatal编程技术网

Ruby on rails 记录更新时的Rails一致性检查

Ruby on rails 记录更新时的Rails一致性检查,ruby-on-rails,ruby-on-rails-3,validation,activerecord,data-consistency,Ruby On Rails,Ruby On Rails 3,Validation,Activerecord,Data Consistency,我将启动一个系统,我们选择rails,因为它涵盖了我们的所有需求 我们需要在系统的某一点上保持数据库更新的一致性,我记得我在一些官方文档中发现rails可以自动检查记录的版本,但是我在谷歌上搜索了很多,我再也找不到这些页面了 问题如下: 假设数据库的表中存在一条记录。比如说,一个“账户” 假设一个名为Bob的用户找到该记录并开始编辑它。假设用户将其名称从“Incomings”更改为“Sales” 假设在Bob编辑记录时,另一个名为Susan的用户找到了完全相同的记录并开始编辑它。假设Susan

我将启动一个系统,我们选择rails,因为它涵盖了我们的所有需求

我们需要在系统的某一点上保持数据库更新的一致性,我记得我在一些官方文档中发现rails可以自动检查记录的版本,但是我在谷歌上搜索了很多,我再也找不到这些页面了

问题如下:

  • 假设数据库的表中存在一条记录。比如说,一个“账户”
  • 假设一个名为Bob的用户找到该记录并开始编辑它。假设用户将其名称从“Incomings”更改为“Sales”
  • 假设在Bob编辑记录时,另一个名为Susan的用户找到了完全相同的记录并开始编辑它。假设Susan想将账户名称从“收入”改为“服务费”
  • 然后,Bob保存他的更改
  • Bob保存更改后,Susan尝试保存她的更改
此时,系统应通知Susan另一个用户已更改记录,并且她的更改无法保存

我可以手动进行验证,但我记得这可以由Rails自动完成。我记得在数据库的表中唯一需要验证的地方是添加一个“version”列,Rails会处理这个问题。实际上,我不记得该列是否必须称为“version”或其他名称,但事实是只有一个列才能启用此功能

问题是我再也找不到那个文档了。如果有人能为我提供该文档的链接,我将不胜感激,因为“版本”栏的重新查询是我所记得的,我不知道我还需要注意哪些事情


提前谢谢。

好吧,我已经找到了我自己问题的答案

该文档位于API上,可在以下位置找到:

文档非常简短!我在所需列的名称上错了。列的正确名称为“lock_version”


感谢所有阅读我的问题的人。

好吧,我已经找到了我自己问题的答案

该文档位于API上,可在以下位置找到:

文档非常简短!我在所需列的名称上错了。列的正确名称为“lock_version”

感谢所有读过我的问题的人