0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

usersテーブル作成 (実務未経験状態でLaravelを使用した共同開発 タスク1)

Last updated at Posted at 2025-04-30

0.背景

本記事は、前回の記事「実務未経験状態でLaravelを使用した共同開発」で取り組んだタスクのうち、usersテーブルの作成とシーダーによるテストデータ登録に関する実装内容の詳細をまとめたもの。

1.タスクの見積もり

期間

・1週間

理由

テーブル設計やSeeder作成はおおよそイメージできていたものの、以下の点を考慮し、余裕を持った見積もりとしました。
・初の共同開発という環境でのタスク対応であること
・Git操作やブランチ運用に不慣れな点の確認作業
・Laravelのマイグレーション・シーダーに関する操作確認
・テストケースの作成・確認時間の確保
・PR提出後のレビュー対応時間の見積もり

実績

・仕様作成完了、テストケース確認:1日
・PR完了:2日
・マージ完了:3日(PR修正なし)

2.実装内容

①usersテーブル作成
・Laravelの初期マイグレーションファイル(create_users_table.php)に softDeletes() を追加し、論理削除に対応。
②テストデータ登録用シーダー作成

users テーブルに以下ルールで2件のレコードを登録:

・name:6文字のランダムな文字列
・email:name + @sample.com 形式
・password:文字列 'password' を Hash::make で暗号化
※ for文を活用し、登録件数を容易に変更できる構成としています。
③UserモデルにsoftDeletes追加
・Illuminate\Database\Eloquent\SoftDeletes をuse句で取り込み、モデルにトレイトを適用。

3.テスト実施内容

・usersテーブルにdeleted_atカラムがあることを確認
・シーダー実行後、usersテーブルにレコードが正しく追加されることを確認
・登録データに対して論理削除が有効であることを確認

4.本実装に関して

・可読性:仕様の理解を補助するため、要所にコメントを記載し、第三者が読んでも意図がわかるように意識。
・再利用性:Seederの構成やモデルの記述についても、他の機能や環境に転用しやすい形で記述。
・再利用性:テストデータ登録数を柔軟に変更できるようfor文とランダム値を活用し、今後の再利用や追加開発への対応を想定。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?