我收到此消息的原因。 当我调用没有数据库的东西时,我想要一条错误消息。
我是laravel的新手,我知道我必须写下其他条件,但我不知道如何。
FatalErrorException
方法Illuminate \ View \ View :: __ toString()不能抛出异常, 捕获ErrorException:未定义的变量:yyy(查看: /Users/xxx/Work/yyy/resources/views/yyy/index.blade.php)
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use DB;
class SearchController extends Controller {
public function getSearch(Request $request) {
$search = $request->input('search');
if(empty($search)) {
return "please search something!";
}
$searchResult = DB::table('yyy')->where('dateOfReport', 'LIKE', "%$search%")->get()->toArray();
return view('search.searchResult', ['searchResult' => $searchResult, 'search' => $search]);
}
}
这里也是我的view.blade文件:
@extends('layout')
@section('content')
<h1>Detaily yyy Reports</h1>
<h2>{{$yyy->temperature }}°C</h2>
<p>{{$yyy->dateOfReport}}
<a href="/yyy/{{$yyy->id}}/delete" onclick="return confirm('Are you sure to delete?');"><font color="red">Delete</font></a>
Report created at: {{$yyy->created_at}}
@if($yyy->created_at != $yyy->updated_at)
Report updated at: {{$yyy->updated_at}}
{{ csrf_field() }}
@endif
@endsection
谢谢你的时间!
答案 0 :(得分:1)
此错误似乎源自您的视图代码,而不是控制器。
您可能在视图中使用$yyy
变量,而您没有在控制器中分配它。
即
return view('search.searchResult', ['searchResult' => $searchResult, 'search' => $search, 'yyy' => 'this is your assigned variable value']);