点数
74点
感想
「読み進めていけばLravel9を使ったサイトを作ることができる」といった感じで、あまり勉強にはならない内容だった。
それでも、短時間でCRUDを実装したいという場合は本書の内容で十分だと思う。
基本
Laravel Sailとは
- Dockerを操作するためのCLIであり、SailコマンドでDocker環境を構築することができる。
- composer, artisan, node, npm, phpなどのコマンドもsailコマンドで実行できる。
ex) sail artisan -V; sail node --version; sail npm intall; sail php --versionなど - Laravel Sailを使わないとComposer, MySQL, Node.jsなどを手動でインストールする必要があるので、特に理由がない限りはLaravel Sailを使うべき。
環境構築
- curl -s https://laravel.build/backend | bash
- cd backend
- ./vendor/bin/sail up -dで起動(http://localhostで確認)、./vendor/bin/sail downで停止
- alias sail='[ -f sail ] && bash sail || bash vendor/bin/sail' で以降は./vendor/bin/sailではなくsailで実行できる(セッション内のみ有効)
- sail artisan migrateでテーブル作成(接続情報は.envにある)
PHPバージョンの指定
docker-compose.ymlのcontext: ./vendor/laravel/sail/runtimes/8.2
の部分で指定する。
変更後はsail build --no-cacheでビルドが必要。
phpMyAdminを使う場合
1. docker-compose.ymlのservicesに追加
phpmyadmin:
image: 'phpmyadmin/phpmyadmin'
links:
- mysql:mysql
ports:
- 8080:80
environment:
PMA_HOST: mysql
PMA_USER: "${DB_USERNAME}" # 認証をスキップしない場合は不要
PMA_PASSWORD: "${DB_PASSWORD}" # 認証をスキップしない場合は不要
networks:
- sail
2. sail down; sail up -d
3. http://localhost:8080でアクセス
認証機能
LaravelではBreezeというパッケージが提供されている。
- sail composer require laravel/breeze --dev
- sail artisan breeze:install
- sail artisan migrate
- sail npm install
- sail npm run dev
/loginや/registerでアクセス可能。
Laravel-AdminLTEの導入
- sail composer require jeroennoten/laravel-adminlte
- sail artisan adminlte:install
で本体のインストール - sail artisan adminlte:install --only=auth_views
で認証系画面のbladeテンプレートのインストール - sail artisan adminlte:status
で導入状況を確認できる。
サンプルページの作成
- route/web.phpに追加
Route::get('/adminlte', function () {
return view('adminlte');
});
- touch resources/views/adminlte.blade.php
@extends('adminlte::page')
@section('title', 'サンプルページ')
@section('content_header')
<h1>サンプルページ</h1>
@stop
@section('content')
<p>コンテンツがここに入ります。</p>
@stop
@section('css')
{{-- ページ毎のCSS
<link rel="stylesheet" href="/css/xxx.css">
--}}
@stop
@section('js')
{{-- ページ毎のjs
<script>console.log('hoge');</script>
--}}
@stop
コメント