魔法使いの卵

WEBエンジニアの卵の成長記録

Laravel4でテーブル内のレーコードを一覧表示してみたったw@改修ver

前回はmigrationとseedを使ってテストデータを作ってみた。

今回は前回作成したテストデータを元にブラウザ上に

テストデータの一覧を表示させてみるでー!!

テストデータの作り方は下記。


Laravel4のsqliteでテーブルを作ってテストデータをぶっこんでみたったw - 魔法使いの卵

 

まずはコントローラーを新しく用意するで!!

php artisan controller:make BackController

 まずは、BackControllerを作成したでー!!

 

新しく今回作るアクションを作成するでー!!

public function userlist()

 {

     $userlist = User::withTrashed()->orderBy('id','desc')->get();

     return View::make('userlist')->with('userlist', $userlist);

 }

 userlist()が呼ばれたら

モデルからデータを取ってくるでーってことをやってるねん。

今回はIDの新しいもの順に表示させるって条件でやってみるでー!!

User::withTrashed()->orderBy('id','desc')->get();

                |              |        |             L欲しいカラムを指定。指定無しは全て

             |              |        L並び順を指定

             |              Lどのカラムを並び替えの軸にするのか指定

                Lsoftdeleteを使用時deleted_atに

     日付が入っているレコードも取得する

ってことをやってるんやでー!!

return View::make('userlist')->with('userlist', $userlist);

 が何してるんかわからん人は下記をみてみてなー!!

Laravel4 コントローラーからビューに変数を渡したったw - 魔法使いの卵

 

これでコントローラの処理はおしまいやで!!

次はviewを作ろうか!!

view

ただテーブルからレコード情報をとってくるだけやから

めっちゃ簡単すぎてLaravelたん大好き。

@extends('master')

@section('title')

ユーザ一覧

@stop

@section('body')                                                                                              

<table border="1">

  <tr>

    <th>ID</th>

    <th>email</th>

    <th>password</th>

    <th>氏名</th>

    <th>TEL</th>

    <th>住所</th>

    <th>削除</th>

</tr>

@foreach($userlist as $user)

<tr>

    <td>{{ $user->id }}</td>

    <td>{{ $user->email }}</td>

    <td>{{ $user->password }}</td>

    <td>{{ $user->name }}</td>

    <td>{{ $user->zip }}</td>

    <td>{{ $user->delete_flag }}</td>

</tr>

@endforeach

</table>

@stop

@foreachと@endforeach以外は下記になにしてるか書いてるでー!!

Laravel4 コントローラーからビューに変数を渡したったw - 魔法使いの卵

 

@foreachと@endforeachってなんやねん。

配列のはじまり

@foreach('配列','ネストされた配列')

配列の終わり

@endforeach

たったこれだけ!!

あとは表示させたい内容を

{{ 配列->キー }}

で表示させるってことをしてるだけ。

表示が{{}}やからソースが綺麗に管理しやすいってかんじ

{{{ }}}でエスケープできるらしいでー!!

Laravelたんやさしい・・・

 

最後にapp/routes.phpを編集するでー!!

Route::get('userlist', 'BackController@userlist');

上記を記述してあげておしまい!!

 

これでブラウザに前回作ったテーブルのレコード情報を

全部表示させることできるはず!!

 

ただ表示させるだけだと超簡単なLaravelたんw