Ruby on rails 轨道5。模型的草稿版本和发布版本

Ruby on rails 轨道5。模型的草稿版本和发布版本,ruby-on-rails,rails-models,Ruby On Rails,Rails Models,哪种方式是获得模型草稿的最佳方式? 我有一个课程模型和他的描述以及课程模型 class Course < ApplicationRecord has_many :lessons has_one :description ... end 课程创建一个。允许用户仅编辑草稿版本 在前端设置发布操作和按钮:调用“发布”函数,处理数据发布过程 我对你的结局很感兴趣 class Description < ApplicationRecord belongs_to :course ...

哪种方式是获得模型草稿的最佳方式? 我有一个课程模型和他的描述以及课程模型

class Course < ApplicationRecord
 has_many :lessons
 has_one :description
...
end
课程

类描述

课程
“说明”和“课程模型”有一个状态机,状态机的状态为“已发布”,当它们有状态机时,它们的信息将被发布。我需要草稿版本来修改他们的信息,而不更改发布的信息。我该怎么做



PD:我曾尝试使用draftsman gem,但不适用于Rails 5。

您可以尝试draftpunk或使用他们的方法来实现您的自定义解决方案

想法是在同一数据库表中创建并存储草稿版本。只要一个身份证明。在应用程序中,您必须注意:

  • 显示给最终用户->创建一个仅返回非草稿的范围(因此外部id为零)
  • 调用编辑->返回模型的草稿版本时,如果为零->创建一个。允许用户仅编辑草稿版本
  • 在前端设置发布操作和按钮:调用“发布”函数,处理数据发布过程
  • 我对你的结局很感兴趣

    class Description < ApplicationRecord
     belongs_to :course
    ...
    end
    
    class Lesson < ApplicationRecord
     belongs_to :course
    ...
    end