DB接続情報記載
.envのmysql部分に接続情報を記載する。
DB_CONNECTION=mysql
DB_HOST=XXX.XXX.XXX.XXX
DB_PORT=3306
DB_DATABASE=DB名
DB_USERNAME=ユーザー名
DB_PASSWORD=パスワード
ちなみに、「config/database.php」というファイルがあるがこれは修正する必要がない。「 config/database.php 」から「.env」を見に行っている。
モデルクラス作成
artisanコマンドでモデルクラスを作成。
php artisan make:model Models/Menu_roulette
Models/Menu_roulette.phpを修正
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
class Menu_roulette extends Model
{
protected $table = 'menu_roulette';
public function getAll()
{
$data = DB::table($this->table)->get();
return $data;
}
}
コントローラからモデルのファンクションを呼び出してデータ取得
app/Http/Controllers/PagesController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Menu_roulette;
class PagesController extends Controller
{
public function getHome(){
$md = new Menu_roulette();
$menuList = $md->getAll();
return view('home', ['menuList' => $menuList]);
}
}
テンプレート側で受け取ったデータを表示
作成済のテンプレート resources/views/home.blade.phpに、コントローラから受け取ったデータを表示するコードを記載 。
@foreach($menuList as $value)
{{$value->title}}
@endforeach
ページに、DBから取得したデータが表示されることを確認。