メンバー役割変更機能の実装
スペース内でのメンバーの役割(権限)を変更する機能を実装する。
要件
- オーナー・管理者が他のメンバーの役割を変更可能
- 役割の種類:オーナー、管理者、一般メンバー
- 自分自身の役割は変更不可
- オーナーは1人まで(移譲時は例外)
技術的要件
PATCH /s/:space_identifier/settings/members/:member_id/role
エンドポイント- 役割変更フォームの作成
- 権限チェックロジックの実装
- 役割変更のバリデーション
実装箇所
app/controllers/spaces/settings/members/roles/update_controller.rb
app/forms/spaces/settings/members/role_edit_form.rb
SpaceMemberRecord
の役割関連メソッド拡張