-
Notifications
You must be signed in to change notification settings - Fork 4
コンテンツデータ設計
Kazane Shimizu edited this page Mar 1, 2023
·
1 revision
作成されたコレクションにデータを入れるAPI設計です
コンテンツは型が動的なので、すべて data
でjsonを受け取ることにします。
例として、以下のテーブルが作成済みとする
Restaurant
カラム名 | タイプ | 長さ | NULL許可 | キー | デフォルト | コメント |
---|---|---|---|---|---|---|
id | int | 11 | primary | |||
name | varchar | 255 | ||||
address | varchar | 255 | YES | |||
has_parking | varhcar | 255 | ||||
created_at | dateTime | |||||
updated_at | dateTime |
GET /api/contents/:collection
リクエストパラメータについては、こちらを参照
例1)http://localhost:8080/api/contents/Restaurant 一覧の場合(singleton: false)
data: [
{
id: 1,
name: '俺のフレンチ'
address: '東京都港区..',
has_parking: false,
created_at: 2022-10-10,
updated_at: 2022-10-10,
},
{
id: 2,
name: '俺のイタリアン'
address: '東京都江東区..',
has_parking: true,
created_at: 2022-10-10,
updated_at: 2022-10-10,
}
]
例2)http://localhost:8080/api/contents/Company 一覧の場合(singleton: true)
data: {
id: 1,
name: '株式会社 俺の'
}
GET /api/contents/:collection/:id
例1)http://localhost:8080/api/contents/Restaurant/1
data: {
id: 1,
name: '俺のフレンチ'
address: '東京都港区..',
has_parking: false,
created_at: 2022-10-10,
updated_at: 2022-10-10,
}
POST /api/contents/:collection
例)http://localhost:8080/api/contents/Restaurant
{
name: '俺のイタリアン',
address: '東京都港区..',
has_parking: false
}
data: {
name: '俺のイタリアン',
address: '東京都港区..',
has_parking: false,
created_at: 2022-10-10,
updated_at: 2022-10-10,
}
PUT /api/contents/:collection/:id
いつものやつ
DELETE /api/contents/:collection/:id
いつものやつ