diff --git a/actiontext/app/models/action_text/rich_text.rb b/actiontext/app/models/action_text/rich_text.rb
index b9bafd74688..1c4b3e28e13 100644
--- a/actiontext/app/models/action_text/rich_text.rb
+++ b/actiontext/app/models/action_text/rich_text.rb
@@ -7,6 +7,16 @@ module ActionText
# It also holds all the references to the embedded files, which are stored using Active Storage.
# This record is then associated with the Active Record model the application desires to have
# rich text content using the +has_rich_text+ class method.
+ #
+ # class Message < ActiveRecord::Base
+ # has_rich_text :content
+ # end
+ #
+ # message = Message.create!(content: "
Funny times!
")
+ # message.content #=> # "
Funny times!
"
+ # message.content.to_plain_text # => "Funny times!"
+ #
class RichText < Record
self.table_name = "action_text_rich_texts"
@@ -20,10 +30,26 @@ module ActionText
self.embeds = body.attachables.grep(ActiveStorage::Blob).uniq if body.present?
end
+ # Returns the +body+ attribute as plain text with all HTML tags removed.
+ #
+ # message = Message.create!(content: "
Funny times!
")
+ # message.content.to_plain_text # => "Funny times!"
def to_plain_text
body&.to_plain_text.to_s
end
+ # Returns the +body+ attribute in a format that makes it editable in the Trix
+ # editor. Previews of attachments are rendered inline.
+ #
+ # content = "