Laravelに慣れるため、簡単な画面表示を作ってみます。
親記事
Laravel 5.7で基本的なCRUDを作る - Qiita
ルーティングを試す
readouble.com: ルーティング
ルートを追加します。
Route::get('foo', function () {
return 'Foo!';
});
ブラウザでhttps://(アプリ名)/foo
にアクセスするとFoo!
と表示されます。
コントローラを試す
readouble.com: コントローラ
Artisanコマンドでコントローラを生成します。
> php artisan make:controller FooController
生成したファイルにfoo1
アクションを追加します。
public function foo1()
{
return 'Foo1!!';
}
ルートを追加します。
Route::get('foo/foo1', 'FooController@foo1');
ブラウザでhttps://(アプリ名)/foo/foo1
にアクセスするとFoo1!!
と表示されます。
ビューを試す
readouble.com: ビュー
resources/views/
にfoo/
を作り、その中にfoo2.blade.php
を作ります。
<h1>{{ $title }}</h1>
<p>{{ $body }}</p>
コントローラにfoo2
アクションを追加します。
public function foo2()
{
return view('foo.foo2', [
'title' => 'Foo2',
'body' => 'My first Laravel.'
]);
}
ルートを追加します。
Route::get('foo/foo2', 'FooController@foo2');
DBからデータを取得する
以前の記事で作成したデータベースのusersテーブルから一人の情報を取得します。
Userモデルはデフォルトでapp/User.php
に存在しています。
コントローラでApp\User
をインポートします。
また、foo3
も追加します。
namespace App\Http\Controllers;
use Illuminate\Http\Request;
+ use App\User;
class FooController extends Controller
{
+ public function foo3()
+ {
+ $user = User::find(1);
+ return view('foo.foo3', [
+ 'user' => $user
+ ]);
+ }
readouble.com: 1つのレコードを取得する find() について
ビューを作ります。
<ul>
<li>Name: {{ $user->name }}</li>
<li>Email: {{ $user['email'] }}</li>
</ul>
<hr>
@php
var_dump($user);
@endphp
readouble.com: ビュー内で純粋なPHPを実行する @php について
ルートを追加します。
Route::get('foo/foo3', 'FooController@foo3');
ブラウザでhttps://(アプリ名)/foo/foo3
にアクセスして、ユーザー名とメールアドレス、そしてユーザー番号1番のオブジェクトの中身が表示されれば成功です。