Laravel 5を使用したToDoアプリケーションの完全かつ包括的な作成方法について、詳細に解説します。このガイドでは、Laravelの基礎から始め、ToDoアプリケーションの構築に必要なすべてのステップを順を追って説明します。記事は、初心者から中級者までの開発者を対象にしています。
1. Laravel 5のインストール
まず、Laravelをインストールするためには、PHPとComposerがインストールされていることを確認してください。これらがインストールされていない場合は、公式ウェブサイトからインストール方法を確認できます。

インストール手順:
-
Composerを使用してLaravelの新しいプロジェクトを作成します。
bashcomposer create-project --prefer-dist laravel/laravel todo-app "5.*"
これにより、Laravel 5の最新バージョンのToDoアプリケーションが作成されます。
-
プロジェクトディレクトリに移動します。
bashcd todo-app
-
Laravelの開発サーバーを起動します。
bashphp artisan serve
開発サーバーが起動し、
http://localhost:8000
でアプリケーションにアクセスできます。
2. データベース設定
ToDoアプリケーションでは、データベースを使用してタスクを管理します。Laravelは、デフォルトでMySQLをサポートしているため、MySQLデータベースを設定します。
.envファイルの設定:
config/database.php
に記載されているデフォルトのデータベース接続設定を、.env
ファイルで設定します。
envDB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=todo_app DB_USERNAME=root DB_PASSWORD=
これで、データベース接続が設定されました。
3. マイグレーションの作成
次に、タスクを管理するためのデータベーステーブルを作成するために、マイグレーションを実行します。
マイグレーションファイルの作成:
Laravelでは、artisan
コマンドを使用してマイグレーションファイルを簡単に作成できます。
bashphp artisan make:migration create_tasks_table --create=tasks
このコマンドで、database/migrations
ディレクトリにマイグレーションファイルが作成されます。このファイルに、テーブルの構造を定義します。
マイグレーションファイルの内容:
マイグレーションファイルを開き、tasks
テーブルに必要なカラムを追加します。例えば、タスクのタイトルと完了状態を保持するカラムを追加します。
phppublic function up()
{
Schema::create('tasks', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->boolean('completed')->default(false);
$table->timestamps();
});
}
マイグレーションの実行:
マイグレーションを実行することで、データベースにテーブルが作成されます。
bashphp artisan migrate
これで、データベースにtasks
テーブルが作成され、タスク情報を保存できるようになります。
4. モデルの作成
次に、Task
モデルを作成して、tasks
テーブルとのやり取りを行います。モデルは、LaravelのEloquent ORMを使用してデータベースの操作を簡単にします。
モデルの作成:
bashphp artisan make:model Task
app/Task.php
ファイルが作成されるので、必要に応じて設定します。例えば、Task
モデルにtitle
とcompleted
属性を指定します。
phpclass Task extends Model
{
protected $fillable = ['title', 'completed'];
}
5. コントローラの作成
次に、ToDoアプリケーションのロジックを管理するためにコントローラを作成します。コントローラは、リクエストに対する処理を担当します。
コントローラの作成:
bashphp artisan make:controller TaskController
app/Http/Controllers/TaskController.php
ファイルが作成されるので、CRUD操作を行うためのメソッドを追加します。
phpuse App\Models\Task;
use Illuminate\Http\Request;
class TaskController extends Controller
{
public function index()
{
$tasks = Task::all();
return view('tasks.index', compact('tasks'));
}
public function store(Request $request)
{
$request->validate([
'title' => 'required|max:255',
]);
Task::create($request->all());
return redirect()->route('tasks.index');
}
public function update(Request $request, Task $task)
{
$task->update($request->all());
return redirect()->route('tasks.index');
}
public function destroy(Task $task)
{
$task->delete();
return redirect()->route('tasks.index');
}
}
6. ルーティングの設定
コントローラを作成した後、routes/web.php
にルートを設定して、URLに対してどのメソッドが呼び出されるかを決定します。
phpRoute::resource('tasks', 'TaskController');
これで、/tasks
にアクセスすると、TaskController
のメソッドが呼び出されるようになります。
7. ビューの作成
ToDoアプリケーションのUIは、resources/views
ディレクトリに保存されます。ここでは、タスクを表示したり、新しいタスクを作成したり、タスクを削除したりするためのビューを作成します。
resources/views/tasks/index.blade.php
の作成:
php
"ja">
"UTF-8">
"viewport" content="width=device-width, initial-scale=1.0">
ToDoアプリケーション
ToDoリスト
このビューでは、タスクを一覧表示し、新しいタスクを追加するフォームと、タスクを削除するボタンを表示します。
8. 最後の確認
すべての設定が完了したら、再度開発サーバーを起動し、ブラウザでhttp://localhost:8000/tasks
にアクセスします。これで、タスクの追加、削除ができるToDoアプリケーションが完成です。
9. 結論
このチュートリアルでは、Laravel 5を使用してシンプルなToDoアプリケーションを作成する方法を紹介しました。これにより、Laravelの基本的な使い方を学ぶことができ、さらに高度な機能を追加していくための基盤を作成することができます。Laravelの強力なEloquent ORMやルーティング、ビューのテンプレート機能を活用することで、簡単にWebアプリケーションを開発することができます。