Slide 1

Slide 1 text

CC BY 4.0 コンテンツタイプと UMLで考える Plone開発 ─Ploneのコンテンツタイプとは何か?─ Plone Users Group Japan 寺田 学 「オープンソースカンファレンス 2024 Online/Fall 」 2024年10月18日

Slide 2

Slide 2 text

CC BY 4.0 セッション中の諸注意 ● スライドは公開済み ● 写真撮影可能、録音・録画可能 ● 質問 ○ Zoomコメントで ● SNSでのつぶやき 歓迎

Slide 3

Slide 3 text

CC BY 4.0 自己紹介 寺田 学 (Manabu TERADA) ● Pythonエンジニア ● Podcast 「terapyon channel」(https://podcast.terapyon.net) ● 主な関連書籍(共著・監修・監訳) ○ Pythonデータ分析 実践ハンドブック (インプレス: 2023年9月) ○ Pythonによるあたらしいデータ分析の教科書第 2版(翔泳社:2022年10月) ○ Python実践レシピ (技術評論社: 2022年1月) ○ スラスラわかるPython第2版(翔泳社:2021年11月) ○ 機械学習図鑑(翔泳社 : 2019年4月)

Slide 4

Slide 4 text

CC BY 4.0 本日のトークと関連組織 Plone Users Group Japan として、トークします。 ● 一般社団法人PyCon JP Association理事 ● 株式会社 CMSコミュニケーションズ 代表取締役 ● 一般社団法人Pythonエンジニア育成推進協会顧問理事 ● Plone Foundation Ambassador ● PSF Fellow member

Slide 5

Slide 5 text

CC BY 4.0 Plone Foundation Plone Foundationは、グローバルに導入されている CMSフレームワーク「 Plone」の普及 ・開発を支援することを目的に 2004年に設立された非営利組織です。主な活動内容 は、Ploneソフトウェアの知財管理と、カンファレンスや開発スプリントの開催を通じたコ ミュニティへの支援です。 ● Plone ・・CMSツール ● Guillotina ・・次世代ヘッドレス非同期サーバフレームワーク ● Pyramid ・・汎用Webフレームワーク ● Zope ・・Webアプリケーション基盤 ● Volto ・・SPAツールキット

Slide 6

Slide 6 text

CC BY 4.0 本日のトーク内容 - Ploneのコンテンツタイプとは何か? (寺田) - UMLで考える, Ploneの開発 (永井さん)

Slide 7

Slide 7 text

CC BY 4.0 コンテンツタイプ?

Slide 8

Slide 8 text

CC BY 4.0 コンテンツタイプって何? ● コンテンツ入力する種類 ● WordPressだと、テンプレートのようなもの ● 例 ○ ページ ○ ニュース ○ イベント

Slide 9

Slide 9 text

CC BY 4.0 Ploneの標準のコンテンツタイプを選ぶ ● 編集バーから選択する

Slide 10

Slide 10 text

CC BY 4.0 Ploneの標準のコンテンツタイプ ● ページの編集画面

Slide 11

Slide 11 text

CC BY 4.0 入力項目とデータベースが一体 ● モデルを定義すると、入力エリアが出てくる ○ フィールド、ウィジェットという考え方 ● 標準の表示方法が決まっている ● Pythonのオブジェクトをそのまま保存 ○ 文字列 ○ リスト ○ など

Slide 12

Slide 12 text

CC BY 4.0 コンテンツタイプとコンテンツ ● コンテンツタイプ は雛形 ○ つまり、 class ● コンテンツ はオブジェクト ○ つまり、インスタンス

Slide 13

Slide 13 text

CC BY 4.0 Ploneのコンテンツ

Slide 14

Slide 14 text

CC BY 4.0 Ploneのコンテンツ ● ユーザが入力したり、編集するものすべて ● Ploneは階層構造を自由に作れる ● フォルダリッシュ(フォルダ)系がある ● リーフ系がある ● 画像などもコンテンツとして扱う

Slide 15

Slide 15 text

CC BY 4.0 コンテンツと URLの関係 ● コンテンツには、ショートネーム(ID)がある ● ショートネームがURL(Path名)になる

Slide 16

Slide 16 text

CC BY 4.0 Ploneのリソース ● コンテンツとは別にシステムが持つべきもの ○ CSS ○ JavaScript ○ アイコンなどの画像 ● コンテンツとしても扱えるが、リソースとして別で扱う

Slide 17

Slide 17 text

CC BY 4.0 Ploneの標準コンテンツタイプ リーフ ● ページ ● ニュース ● イベント ● ファイル ● リンク フォルダ ● フォルダ ● コレクション

Slide 18

Slide 18 text

CC BY 4.0 何を持つ?

Slide 19

Slide 19 text

CC BY 4.0 コンテンツタイプが持つ情報 ● ショートネーム(ID) ● タイトル ● 説明 ● 公開日などその他

Slide 20

Slide 20 text

CC BY 4.0 コンテンツタイプが持つ情報 (公開側) ● 公開側の表示

Slide 21

Slide 21 text

CC BY 4.0 コンテンツタイプが持つデータ ● HTML (WYSIWYG) ● リンク先URL ● ファイル ● その他

Slide 22

Slide 22 text

CC BY 4.0 独自のコンテンツ

Slide 23

Slide 23 text

CC BY 4.0 独自のコンテンツタイプを作れる ● 入力するデータの種類を独自のものにする ● 追加の情報を入力できるようにしたり ● ファイルを複数にしたり ● コンテンツタイプを拡張したり、独自のものを作る

Slide 24

Slide 24 text

CC BY 4.0 独自のコンテンツタイプの作り方 ● PloneのWeb UIから定義することができる ● XMLで定義することができる ● Pythonのコードで定義することができる

Slide 25

Slide 25 text

CC BY 4.0 PloneのWeb UIでコンテンツタイプを定義

Slide 26

Slide 26 text

CC BY 4.0 再配布可能なパッケージング ● Plone のプロダクトを作ることで再利用かのう ● 厳密にはPythonのパッケージ

Slide 27

Slide 27 text

CC BY 4.0 まとめ

Slide 28

Slide 28 text

CC BY 4.0 Ploneのコンテンツタイプ ● Ploneは、コンテンツの雛形をコンテンツタイプという ● コンテンツタイプを生成して、オブジェクトを作る ● オブジェクトはURLのPATHとなる ● 独自のコンテンツタイプを定義できる

Slide 29

Slide 29 text

CC BY 4.0 ご清聴 ありがとうございました。