help with code Hi, I can't make this work... I need to pass a parameter called SERVICE TYPE but the parameter doesn't enter and doesn't enter inside the function any idea how can this be managed...
public function search(Request $request)
{
$words = $request->input('query');
$serviceType = $request->input('serviceType');
$results = (new Search())
->registerModel(Service::class, function(ModelSearchAspect $modelSearchAspect) {
$modelSearchAspect
->addSearchableAttribute('tittle')
->where('online_service' , $serviceType )
->with(['user' , 'serviceGallery']);
})->search($words);
return response()->json($results);
}
I got to do this, and is so nasty to see the code :(
$results = '';
$words = $request->input('query');
$serviceType = $request->input('serviceType');
if ($serviceType === 'true') {
$results = (new Search())
->registerModel(Service::class, function(ModelSearchAspect $modelSearchAspect) {
$modelSearchAspect
->addSearchableAttribute('tittle')
->where('online_service' , 1 )
->with(['user' , 'serviceGallery']);
})->search($words);
}else{
$results = (new Search())
->registerModel(Service::class, function(ModelSearchAspect $modelSearchAspect) {
$modelSearchAspect
->addSearchableAttribute('tittle')
->where('online_service' , 0 )
->with(['user' , 'serviceGallery']);
})->search($words);
}
return response()->json($results);
Hi @santino
You just need to pass the variable to your closure:
public function search(Request $request)
{
$words = $request->input('query');
$serviceType = $request->input('serviceType');
$results = (new Search())
->registerModel(Service::class, function(ModelSearchAspect $modelSearchAspect) use ($serviceType) {
$modelSearchAspect
->addSearchableAttribute('tittle')
->where('online_service', $serviceType)
->with(['user', 'serviceGallery']);
})->search($words);
return response()->json($results);
}
Please sign in or create an account to participate in this conversation.