laravel 検索
解決したいこと
ここに解決したい内容を記載してください。
例)
Laravelで商品管理システムをつくっています。
新規登録の作成をしており、検索ボタンを押すとエラー画面が出てきます。
色々なサイトを見ながら進めているのですが、どこを治す出来なのかわかりません。
解決法を教えてください
発生している問題・エラー
Undefined variable $companies
例)
//一覧画面model
public function getList() {
$productes = DB::table('productes')->get();
return $productes;
}
public function getCompany(){
$companies=DB::table('companies')->get();
return $companies;
}
または、問題・エラーが起きている画像をここにドラッグアンドドロップ
該当するソースコード
@extends('app')
@section('title', '商品一覧画面')
@section('content')
<div class="container">
<div class="row">
<h1>商品一覧画面</h1>
<div class="form-group">
<form action="{{ route('search') }}" method="GET">
@csrf
<input placeholder="検索キーワード" input type="text" name="keyword">
<select class="" id="company_id" name="company_id">
@foreach($companies as $company)
<option value="{{ $company -> id }}"{{ $company -> company_name}}></option>
@endforeach
</select>
<input type="submit" value="検索">
</form>
<link href="{{ asset('css/app.css') }}" rel="stylesheet">
<table>
<thead>
<tr>
<th>ID</th>
<th>商品画像</th>
<th>商品名</th>
<th>価格</th>
<th>在庫数</th>
<th>メーカー名</th>
<th>
<form>
<td><a href="{{route('regist')}}"><button type="button" class="btn btn-primary">新規登録</button></a></td>
</form>
</th>
</thead>
<tbody>
@foreach ($productes as $productes)
<tr>
<td>{{ $productes -> id }}</td>
<td>{{ $productes -> img_path}}</td>
<td>{{ $productes -> product_name }}</td>
<td>{{ $productes -> price }}</td>
<td>{{ $productes -> stock}}</td>
<td>{{ $productes -> company_name}}</td>
<td><a href="{{route('detail',['id'=>$productes->id])}}"><button type="button" class="btn btn-primary">詳細</button></a></td>
<td><a href="{{route('delete',['id'=>$productes->id]) }}" method="GET"></a></td>
<td>
<form action="{{route('delete',['id'=>$productes->id])}}" method="GET">
@csrf
@method('delete')
<input type="submit" class="btn btn-danger delete-btn" value="削除">
</form>
</td>
</tr>
@endforeach
</tbody>
</table>
</form>
</div>
</div>
@endsection
例)
//一覧画面表示controller
public function showList(){
$product_model= new Productes();
$productes = $product_model->showRelation();
$company_model= new Companies();
$companies = $company_model->getCompany();
return view('list',['productes' => $productes,'companies' => $companies]);
}
自分で試したこと
controllerでうまく$companyが定義されていないのが原因だとはわかっているのですが、記載の仕方に間違っている箇所が見当つかずどのようにすればエラーが解消されるか詳しいかたがおられましたらご教授宜しくお願い致します。
0