はじめに
NotionRubyMapping 解説の第49回目です。ページ側のプロパティを解説しています。今回は RichTextProperty の変更です。現在はデータベース内の最初のページを使って説明していきます。
irb(main):002> page = Page.find "https://www.notion.so/hkob/619a113814134c759773175ac988b96a?pvs=4" => NotionRubyMapping::Page-619a113814134c759773175ac988b96a
RichTextProperty
まず、RichTextProperty を取得します。
irb(main):003> rtp = page.properties["RichText"] => #<NotionRubyMapping::RichTextProperty:0x0000000100bd6680
relation でリレーションの設定状況を確認できます。初期状態では空なので [] です。
irb(main):004> rtp.text_objects => #<NotionRubyMapping::RichTextArray:0x000000011bed73c8 @key="title", @rich_text_objects=[], @will_update=false>
rtp.text_objects は RichTextArray なので << で文字列を追加できます。
irb(main):006> rtp.text_objects << "Sample text" => #<NotionRubyMapping::TextObject:0x000000011ea5c598 @options={"plain_text"=>"Sample text"}, @text="Sample text", @type="text", @will_update=false> irb(main):007> page.save => NotionRubyMapping::Page-619a113814134c759773175ac988b96a
設定されたテキストがプロパティに設定されていることがわかります。
おわりに
今回はページの RichTextProperty の変更を説明しました。text_object が RichTextArray なので、文字列や TextObject などを追加することでプロパティを更新することができます。
RichTextProperty のマニュアルはこちらです。