我对Laravel 5.4中的范围有一些不确定的问题
我尝试使用简单的语法编写范围。
class Addresses extends Model
{
protected $table = "Addresses";
protected $primaryKey = 'adress';
public $timestamps = false;
public function scopeSearchAdress($query, $searchTerm)
{
return $query->where('adress', 'LIKE', '%'.$searchTerm.'%s');
}
public function company()
{
return $this->hasOne(Company::class, 'adress');
}
public function contactPerson()
{
return $this->hasMany(ContactPerson::class, 'adress');
}
}
当我启动php artisan tinker并编写此命令时:
App\Address::searchAdress('1330')->get()
我明白了:
Illuminate\Database\Eloquent\Collection {#695
all: [],
}
我不明白为什么我得到一个空数组。如果我在MSSQL中进行查询,我会使用此地址获取地址= 1330
答案 0 :(得分:1)
问题是我猜是字符串和int值
你正在传递一个字符串,使用这个
App\Address::searchAdress(1330)->get();
更改范围查询
return $query->where('adress', '=', $searchTerm);