在RoR中两个请求之间存储数据的有效方法是什么?

时间:2019-04-19 14:27:44

标签: ruby-on-rails

我有一个带有预览功能的帖子表格。预览命中服务器以进行大量数据编译,然后返回客户端。现在,用户可以选择提交。我想要的是不再重新编译数据。我在这里只能看到两个选项:

1-在预览时将数据存储在redis中,并在创建时再次获取。

2-在提交时发送了编译后的数据(预览)(我不知道如何)。

还有其他选择吗? 如果第二种方法更有效,该如何发送数据?

1 个答案:

答案 0 :(得分:1)

这很复杂,这将是经销商的选择,我们缺少一些要求。

我要做的是向数据库中添加一个名称为status的字段。在预览时,状态将设置为preview,然后在其批准后,状态字段将更新为approved

现在您可以为这样的批准内容创建范围

class Model < ApplicationRecord
  ...
  # Model.approved # this will only return records that are set to approved status
  scope :approved,  ->{ where( status: 'approved') }
  ...
end

我希望这可以帮助或使您了解我会做什么