laravel 5.5, win10+Homestead环境, 项目有两个数据库,一个项目自己的,在Homestead里面,一个外部数据库,在我物理机上。现在我需要从外部数据库读取数据。
业务逻辑是这样的:在视图里填写student id然后点击check,检查提交的student id在外部数据库中是否存在,然后返回信息。数据库连接正常,因为我在homestead里用tinke命令行能读到数据,但是点击按钮后报错,报错信息见下方。var_dump显示返回Null.
请问这该怎么呢?新手刚入门,检查了半天还是不行。求大神指导,不胜感激!
报错信息:
Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)
Call to a member function isNotEmpty() on null
以下是代码
视图 ServiceRequest.blade.php
......
{{ csrf_field() }}
Please Enter Student ID:
Check
......
路由 web.php
//Check Student ID
Route::post('/ServiceRequest', 'StudentsController@check')->name('check');
控制器StudentsController.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use App\Models\Student;
class StudentsController extends Controller
{
public function check(Request $request)
{
$result = DB::connection('mysql_campus') -> table('students') -> where('student_id', $request) -> first();
// var_dump($result);
// exit();
if ($result->isNotEmpty($result)){
session()->flash('success', 'Correct!');
return back();
}else{
session()->flash('danger', 'Sorry, not found!');
return back();
}
}
......