laravel5.8で「TaskHERO」の開発を始めてみる
タスクをこなしていくうえで管理してくれる相棒みたいなものがほしくて、どうせなら覚えたてのlaravelでオリジナルのwebアプリつくれないかと発作的に思い立ったので実践してみます。
緊急事態宣言もでて、3連休もずっとweb開発とFE対策の勉強という感じなのでどんどん進めていきます。
この記事で開発日誌をつけられたらなとおもいつつ、これ書く時間もないなあとおもいつつ、でもこうゆうののこしておきたかったので最後まで頑張ります。
開発環境
- フレームワーク:laravel5.8.38
- PHP7.4.13
- xampp
リポジトリ
https://github.com/atsuaa/TaskHERO
インストールからまとめます。
laravelインストール
composerでインストールします。(composer2.0.8)
composer create-project "laravel/laravel=5.*"
詰まった点
xamppのルートページにアクセスしてもhome画面が表示されなかった。
解決策
apacheがわのルーティング情報をリライティングする必要があったようです。そこらへんはまだよくわかっていませんので、参考記事のようにこちらのgithubの.htaccessファイルをTaskHERO/(アプリのルートディレクトリ)に置きました。
Options -MultiViews
RewriteEngine On RewriteCond %{REQUEST_FILENAME} -d [OR] RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^ ^$1 [N] RewriteCond %{REQUEST_URI} (\.\w+$) [NC] RewriteRule ^(.*)$ public/$1 RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ server.php
各種設定
次のものを設定しています。
- DB
- appname
- locale
DBは.envファイルに記述します。usernameとpasswordはよしなに。
# .envファイル
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=taskhero
DB_USERNAME=username
DB_PASSWORD=password
/config/app.phpでappnameとlocale情報を編集します。
// /config/app.php
// 16行目
'name' => env('APP_NAME', 'TaskHERO'),
// 70行目
'timezone' => 'Asia/Tokyo',
// 83行目
'locale' => 'ja',
基本設定はいったん終了です。ほかの設定で必要な個所がでてきたらこの記事内であとから追記します。
詰まった点
データベース名の設定を忘れていました。
つぎに出てくるmigrateコマンド実行時に、「nothing to migrate」とでてきたせいでルーティング回りをうたがってだいぶ時間ロスしました。
「nothing to migrate」が出た理由は、初期設定の"laravel"データベースは以前作成しており、そちらにすでに同じテーブルがあったからです。
本来なら「データベースがありません」系のエラーが出てくるんだと思います。
ひとまずログイン機能だけ実装
開発の雰囲気だけ出すためにlaravelに備わっている認証機能だけてっとりばやく用意します。めっちゃ簡単です。
マイグレーションでusers table用意
あとでテーブルの内容は変更します。
いったんマイグレーションを実行してusers tableをデフォルトのものを作っておきます。(認証機能の確認用)
composer dump-autoload
php artisan migrate
デフォルトでcreate_users_tableマイグレーションファイルがあるのでDBはこれだけです。
artisanでauthビュー用意
公式サイトにもある通り、一瞬でログイン処理の実装ができます。(コードを理解するのがまあまあ面倒くさいです)
php artisan make:auth
これでhome画面にアクセスすると右上にログイン、登録リンクが表示され、ログイン用のコントローラー、ビューが一式作成されています。ビューに時間をかけたくないので(デザインセンスもないので)この画面を使っていきます。

このへんで区切りをつけてつづきは次回にします。
タイピングの遅さが致命的なので助けてください。頑張ります、、
ディスカッション
コメント一覧
まだ、コメントがありません