From ee3a9503cd1c5ac12ccfd406047f7502a9a9c6dc Mon Sep 17 00:00:00 2001 From: Jorge Manrubia Date: Thu, 29 May 2025 15:44:43 +0200 Subject: [PATCH] Update script to deal with duplicated records We are not enforcing unique keys for markdowns, and we have some dups --- script/convert_markdowns_to_rich_text.rb | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/script/convert_markdowns_to_rich_text.rb b/script/convert_markdowns_to_rich_text.rb index 1a43db239..e093730f6 100755 --- a/script/convert_markdowns_to_rich_text.rb +++ b/script/convert_markdowns_to_rich_text.rb @@ -77,10 +77,12 @@ class RedcarpetRenderer end end -ApplicationRecord.with_each_tenant do |tenant| - puts "Processing tenant: #{tenant}" +def process_all(klass, field) + klass.find_each do |record| + markdown = ActionText::Markdown.find_by(record: record, name: field) + next unless markdown - ActionText::Markdown.find_each do |markdown| + puts "markdown.id=#{markdown.id}" next unless markdown.record html = RedcarpetRenderer.render(markdown.content.to_s) @@ -102,3 +104,12 @@ ApplicationRecord.with_each_tenant do |tenant| warn "✗ Failed to process markdown ##{markdown.id}: #{e.class} - #{e.message}" end end + +ApplicationRecord.with_each_tenant do |tenant| + puts "Processing tenant: #{tenant}" + + ActionText::RichText.delete_all + + process_all(Card, :description) + process_all(Comment, :body) +end