vuejs-jp / vuefes-2019 Public
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[No merge] Contentful API スキーマ検討及びデータ登録(タイムテーブル情報) #160
Conversation
Contenful API の仕様調べて分かったことをメモ。 (1) モデル同士の関連付けContent modelling basics | Contentful
例えば (2) 循環参照で死なない?
結論: 死なない。 Contentful で、自分用に検証のための Space を作って試してみたところ、エラーにならずにデータを取得できたので OK (3) Curl からお手軽にデータを取得してみたいのだが?下記の記事にあるように、Curl から取得するのは結構面倒くさい。 How to quickly access API responses with curl and jq | Contentful 代案としては、API の Access token を取得するページで boilerplate が置いてあったので使ってみた。 |
遅くなりましたがレビューお願いします!
Web 班のほうで API スキーマ定義&レビューをしているのですが、特にタイムテーブル関係について最小限のデータしか持たないような感じにしています。 なので、もしかしたら、アプリ側で「この情報を API から返してくれないとタイムテーブルを表示できないよ〜」もしくは「この情報を API から返してくれたほうが圧倒的に良さそう」という場合があるかもしれません。 一旦 API の用意は進めますが、後のスキーマ変更の可能性も考慮しておりますので、アシアルさんのほうでの実装時に何かありましたら、遠慮無くおっしゃってください〜 |
avatar2x: string // Image の URL | ||
twitter?: string | ||
github?: string | ||
description: string // Markdown |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
現状の実装では string[]
にして、中に <br>
や
などを含めたりしています。
現状の実装を引き継がずに Markdown にしている理由は、下記です。
- アプリなどを考えると HTML タグを含めるべきではない
stirng[]
にすると、Contentful の仕様上、string 要素ひとつあたりの文字数が 255 に制限される
docs/schema.ts
Outdated
|
||
// 最初の要素の sys.type.sys.id によって | ||
// TimeContent なのか Session なのか TimeContainerPart なのかを判定する | ||
contents: TimeContent[] | Session[] | TimeContainerPart[] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ここのTimeContentとSessionは複数になることはあるのでしょうか??
各typeは以下のように理解してまして、複数になるものはTimeContainerPartに入るのかな?と思ってます。
- TimeContent: イベントの進行などの事柄 (e.g. 会場・受付)
- Session: セッション (e.g. フルセッション)
- TimeContainerPart: 切り替えがあるもの (e.g. ハーフセッション)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
各typeは以下のように理解してまして、複数になるものはTimeContainerPartに入るのかな?と思ってます。
僕も当初はそのように理解していたですが、Session が複数入る例が先ほど発生しましたw
TimeContent が複数入る例はまだ発生していないですが、まあ揃えておいてよいかなという考えです。
補足すると、
- 複数かつ時間を持つもの -> TimeContainerPart[]
- 複数でも時間を持たないもの -> Session[] or TimeContent[]
となります。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
最初の要素の sys.contentType.sys.id によって
TimeContent なのか Session なのか TimeContainerPart なのかを判定する
念のため確認ですが、このsys.contentType.sys.id
は各タイプで共通の固定値にする、(可変ではない)という理解で合っているでしょうか?(もし、共通の固定値でないならtype: String
みたいな値を持ってもいいのかな...と思います)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
念のため確認ですが、このsys.contentType.sys.idは各タイプで共通の固定値にする、(可変ではない)という理解で合っているでしょうか?
はい、合っています。Contentful が用意してくれるパラメータで、
'timeContent'
'session'
'timeContentPart'
のいずれかが自動的に固定で入ります。
|
docs/schema.ts
Outdated
|
||
// 最初の要素の sys.type.sys.id によって | ||
// TimeContent なのか Session なのか TimeContainerPart なのかを判定する | ||
contents: TimeContent[] | Session[] | TimeContainerPart[] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
最初の要素の sys.contentType.sys.id によって
TimeContent なのか Session なのか TimeContainerPart なのかを判定する
念のため確認ですが、このsys.contentType.sys.id
は各タイプで共通の固定値にする、(可変ではない)という理解で合っているでしょうか?(もし、共通の固定値でないならtype: String
みたいな値を持ってもいいのかな...と思います)
お待たせしました!Contentful へのデータ登録が終わり、API が使えるようになったのでお知らせします!
不明点や変更依頼などありましたら、この Issue にお気軽にコメントください〜 |
遅くなりましたが了解しました |
@inouetakuya @みなさま 頂いたタイムテーブルデータをアプリに組み込んでみました(添付ファイル)。アプリの利用を考慮いただいた形式で、ほぼ大丈夫そうです! 細かい点なのですが、各セッションのスピーカーがスポンサー企業に所属しているかを表すスポンサータグを表示させるかを判定するための情報が、追加で必要そうです。セッションやスピーカーが今後追加されなければ、ハードコードでも対応できるかもしれないですが、可能ならContentfulのSpeakerにスポンサー企業に所属しているかかどうかの情報を追加いただきたいです。(例:sponsorPlan:”GOLD”) 今後Webサイトやアプリで、スポンサー枠だという表示を出さないようにする予定でしたら、今のContentfulの内容で問題ございません! |
はっや!アシアルさん凄すぎる... スポンサー枠を表示させるか否か
(もしかしたら、今後、やっぱり表示させようということになるかもしれませんが) 8/30(金)現在では、スポンサー枠であると示す予定はないです〜(下記) 何か補足などがあればコメントください〜 |
@masahirotanaka @inouetakuya |
@masahirotanaka CC: 皆さん 同時通訳の有無を表すフラグを追加します同時通訳の予算を確保できたので、同時通訳の有無を表示させるようにします。 したがって、下記のように |
よってクローズします。 |
ちょっと別件でスポンサーのバナーを一括ダウンロードしたくなったので Reopen します。 |
この件が解決したのでクローズします。 |
やりたいこと
タイムテーブル情報を Contentful API から取得できるようにしたい。
関連
#157 (comment)
TODO
期限
8/28(水)までに完了させる。
レビューポイント
タイムテーブルモデリングむずい...
モデル名...
注意事項
データスキーマを検討するために、何らかのファイルにスキーマを書き出すが、あくまで検討用途なので、マージはしない。