Hola, estoy aprendiendo Laravel y tratando de hacer un autocompletado de búsqueda con sugerencias de una base de datos. Veo a mucha gente haciéndolo con JQuery, así que eso es lo que he intentado. Pero cuando ejecuto el sitio, solo recibo una carta de sugerencia y, a veces, ninguna sugerencia. Sospecho que mi enrutamiento está desactivado, así que intenté agregar información en la función de consulta, pero eso tampoco aparece,
MI CUCHILLA
<!DOCTYPE html> <html> <head> <title>Laravel 8 Autocomplete Search using Bootstrap Typeahead JS -ItSolutionStuff.com</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css" /> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-3-typeahead/4.0.1/bootstrap3-typeahead.min.js"></script> </head> <body> <div class="container"> <h1>Laravel 8 Autocomplete Search using Bootstrap Typeahead JS - ItSolutionStuff.com</h1> <input class="typeahead form-control" type="text"> </div> <script type="text/javascript"> var path = "{{ route('autocomplete') }}"; $('input.typeahead').typeahead({ source: function (query, process) { return $.get(path, { query: query }, function (data) { return process(data); }); } }); </script> </body> </html>MI CONTROLADOR
class TypeaheadController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { return view('welcome'); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function autocomplete(Request $request) { dd('h'); $data = Edit::select("Adresse") ->where("Adresse","LIKE","%{$request->query}%") ->get(); return response()->json($data); } }MI enrutamiento
Route::get('search', [TypeaheadController::class, 'index'])->name('search'); Route::get('autocomplete', [TypeaheadController::class, 'autocomplete'])->name('autocomplete');Si ustedes tienen alguna otra sugerencia sobre cómo puedo hacerlo. no dude en sugerir
$request->query es una función reservada en el objeto $request . para extraer el '?query=xyz' de la URL en la solicitud, tendría que usar la función $request->query('query') para devolver xyz .