メインコンテンツまでスキップ

アプリのスペック

プロジェクトを動作確認するために作成したアプリのスペックです。

スペック

イベントを作成し参加者を募集するアプリです。

  • 誰でもサインアップしてユーザーになれます。
  • イベントの作成者しかイベントを操作できないと困るのでイベントはグループで管理します。
  • イベントの作成や変更を行うには、グループを新しく作るか、既にあるグループのオーナーに連絡してグループのメンバーに追加してもらう必要があります。
  • 誰でもグループを作成し、作成した人がオーナーになります。
  • あるグループのメンバーが作成したイベントは同じグループのメンバーであれば誰でも操作できます。
  • オーナーだけがグループの変更やメンバーの変更を行えます。

出来ているもの

  • サインイン、サインアップ、サインアウト
  • グループのCRUD

これから

  • イベントのCRUD
  • イベントへの参加

データモデル

Entity Relationship Diagrams

認可ルール

profiles

操作できる人
SELECTサインイン済みユーザーのみ
INSERT誰でも(=サインアップ)
UPDATE自分のみ
DELETE自分のみ

groups

操作できる人
SELECTサインイン済みユーザーのみ
INSERTサインイン済みユーザーのみ
UPDATEオーナーのみ
DELETEオーナーのみ

members

操作できる人
SELECT同じグループのメンバーのみ
INSERTオーナーのみ
UPDATEいない
DELETEオーナーのみ

events、event_schedules

操作できる人
SELECT同じグループのメンバーのみ
INSERT同じグループのメンバーのみ
UPDATE同じグループのメンバーのみ
DELETE同じグループのメンバーのみ