Laravel を使用して完全なブログ システムを開発する方法
はじめに:
ブログ システムは、現代のソーシャル ネットワークで一般的なアプリケーションの 1 つです。あなたの考えや経験を共有するためのプラットフォームも、あなたの個人ブランドの重要な部分です。この記事では、Laravel フレームワークを使用して完全なブログ システムを開発する方法を紹介し、具体的なコード例を示します。
1. Laravel フレームワークをインストールする
Composer ツールを使用して Laravel フレームワークをインストールするのが、最も簡単で推奨される方法です。まず、Composer ツールがインストールされていることを確認してから、次のコマンドを実行して新しい Laravel プロジェクトを作成します。
composer create-project --prefer-dist laravel/laravel blog
このコマンドは、現在のディレクトリに blog
という名前の新しいプロジェクトを作成します。
2. データベースを作成する
ブログ システムには、ユーザー、記事、コメントなどの情報を保存するデータベースが必要です。 Laravel 独自のデータ移行ツールを使用してデータベース テーブルを作成できます。まず、プロジェクトのルート ディレクトリにある .env
ファイルを開き、以下に示すようにデータベース接続情報を構成します。
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=blog DB_USERNAME=root DB_PASSWORD=
次に、次のコマンドを実行してデータベース テーブルを生成します。
php artisan migrate
このコマンドは、プロジェクト ルート ディレクトリの database/migrations
ディレクトリにある移行ファイルを実行し、対応するデータベース テーブルを作成します。
3. モデルとコントローラーの作成
次に、ユーザー、記事、コメントなどのデータを処理するためのモデルとコントローラーを作成する必要があります。
次のコマンドを実行してユーザー モデルを生成します:
php artisan make:model User
このコマンドは app## にあります# directory ユーザーモデルファイルを生成します。
php artisan make:controller UserController
app/ にあります。 http /Controllers ディレクトリに UserController コントローラ ファイルを生成します。
Laravel では、ルーティングによってさまざまな URL リクエストがどのように処理されるかが決まります。
routes/web.php ファイルを開き、次のルートを追加します。
Route::get('/', 'ArticleController@index'); Route::post('/article', 'ArticleController@store'); Route::get('/article/create', 'ArticleController@create'); Route::get('/article/{article}', 'ArticleController@show'); Route::post('/article/{article}/comment', 'CommentController@store');
上記の手順で、必要なモデル、コントローラー、ルートを作成しました。次のステップでは、特定の関数を実装します。
public function index() { $articles = Article::all(); return view('article.index', compact('articles')); }
resources/views/article/index.blade.php ビュー ファイルで、ループ トラバーサルを使用してすべての記事を表示します。
resources/views/article/create.blade.php
ビュー ファイルで、フォームを使用してユーザー入力を受け取ります。ArticleController コントローラーの store メソッドで、新しく作成した記事データを次のように保存します。
public function create() { return view('article.create'); }
記事を表示
public function store(Request $request) { $validatedData = $request->validate([ 'title' => 'required|max:255', 'content' => 'required', ]); $article = new Article; $article->title = $validatedData['title']; $article->content = $validatedData['content']; $article->save(); return redirect('/'); }
resources/views/article/ show.blade .php
View ファイルには、1 つの記事の詳細なコンテンツが表示されます。コメントの追加
public function show(Article $article) { return view('article.show', compact('article')); }
以上がLaravel を使用して完全なブログ システムを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。