majoingsw

Joined

150 Experience
1 Lesson Completed
0 Questions Solved

Activity

Posted in Soft delete Active Text in Rails 6

Anyone is using Active text on a controller with paranoia?

I added Action Text to my Post to have the content be rich text but when I soft-delete a post the content is deleted. If I restore the post the content is no longer there.

This is my Post model

class Post < ApplicationRecord
  acts_as_paranoid

  has_rich_text :content

  extend FriendlyId
  friendly_id :title, use: :slugged

  validates_presence_of :title, :content

  belongs_to :user, -> { with_deleted }

end

I run: rails action_text:install

This are the migrations Action Text generated

# This migration comes from active_storage (originally 20170806125915)
class CreateActiveStorageTables < ActiveRecord::Migration[5.2]
  def change
    create_table :active_storage_blobs do |t|
      t.string   :key,        null: false
      t.string   :filename,   null: false
      t.string   :content_type
      t.text     :metadata
      t.bigint   :byte_size,  null: false
      t.string   :checksum,   null: false
      t.datetime :created_at, null: false

      t.index [ :key ], unique: true
    end

    create_table :active_storage_attachments do |t|
      t.string     :name,     null: false
      t.references :record,   null: false, polymorphic: true, index: false
      t.references :blob,     null: false

      t.datetime :created_at, null: false

      t.index [ :record_type, :record_id, :name, :blob_id ], name: "index_active_storage_attachments_uniqueness", unique: true
      t.foreign_key :active_storage_blobs, column: :blob_id
    end
  end
end

----

class CreateActionTextTables < ActiveRecord::Migration[6.0]
  def change
    create_table :action_text_rich_texts do |t|
      t.string     :name, null: false
      t.text       :body, size: :long
      t.references :record, null: false, polymorphic: true, index: false

      t.timestamps

      t.index [ :record_type, :record_id, :name ], name: "index_action_text_rich_texts_uniqueness", unique: true
    end
  end
end

How can I soft delete the rich text? or at least not deleted completely?