@@ -22,6 +22,8 @@ Laravelはvendor/に数千〜数万のファイルがあり、それを頻繁に
2222・リポジトリ: ` git@github.com:idw-coder/laravel-rds.git `
2323・ブランチ戦略: main ブランチ運用
2424
25+ ### ユーザー認証
26+ Sanctum とGoogoleOAuth
2527### CI/CD
2628ローカルではLaravel、MySQLはDocker Sail環境、Vueはnpm run dev で開発サーバーを使用
2729フロントエンド(Vue)、バックエンド(Laravel)はlightsailに
@@ -504,6 +506,45 @@ graph TB
504506 style UpdateGoogleId fill:#fff3cd
505507```
506508
509+ ### roles テーブルの追加
510+
511+ ```bash
512+ ./vendor/bin/sail artisan make:migration create_roles_table
513+ ```
514+
515+ #### ユーザーとロールの中間テーブル(role_user)
516+
517+ 「ユーザー × ロール」の関係を中間テーブルで管理する
518+ https://readouble.com/laravel/10.x/ja/eloquent-relationships.html#many-to-many
519+
520+ ```bash
521+ ./vendor/bin/sail artisan make:migration create_role_user_table
522+ ```
523+
524+ Seeder を作成する
525+ ```bash
526+ ./vendor/bin/sail artisan make:seeder RoleSeeder
527+ ```
528+
529+ それに合わせてdatabase\seeders\DatabaseSeeder.phpも修正
530+
531+ DatabaseSeeder.phpのrun()メソッドが実行される
532+ ```bash
533+ ./vendor/bin/sail artisan migrate:fresh --seed
534+ ```
535+ - `migrate:fresh`: 全テーブルを削除して再作成(空の状態)
536+ - `--seed`: DatabaseSeederを実行して初期データを投入
537+
538+ User.php roles() リレーション追加
539+
540+ app\Models\Role.phpを作成
541+
542+
543+ ## TODO
544+
545+ - **ユーザー登録機能の追加**: 現在はGoogle認証でのみ自動登録されるため、メール・パスワードでの新規登録機能(`register`メソッド)を`AuthController`に追加する。これにより、Googleアカウントを持たないユーザーも登録可能になる。
546+ - **認証方法の統一**: メール・パスワード登録とGoogle認証の両方をサポートし、ユーザーが選択できるようにする。既存ユーザーが後からGoogle認証を紐付けたり、Google認証ユーザーがパスワードを設定できるようにする。
547+
507548### APIのエラーハンドリングとレスポンス形式
508549
509550ルート一覧を確認
@@ -557,4 +598,5 @@ WARN[0000] The "MYSQL_EXTRA_OPTIONS" variable is not set. Defaulting to a blank
557598| GET\|HEAD | storage/{path} | storage.local | - | - |
558599| GET\|HEAD | up | - | - | - |
559600
560- </div>
601+ </div>
602+
0 commit comments