Rumah >pembangunan bahagian belakang >tutorial php >Cara Menyiapkan Carian Teks Penuh Menggunakan Pengakap di Laravel

Cara Menyiapkan Carian Teks Penuh Menggunakan Pengakap di Laravel

Christopher Nolan
Christopher Nolanasal
2025-03-04 10:38:09692semak imbas

How to Set Up a Full-Text Search Using Scout in Laravel

Tutorial ini menunjukkan pelaksanaan carian teks penuh dalam aplikasi Laravel menggunakan perpustakaan Laravel Scout. Pengakap menyediakan pendekatan berasaskan pemandu yang diperkemas untuk menambahkan fungsi penting ini kepada model fasih anda. Ia secara automatik menyegerakkan indeks carian anda dengan perubahan rekod yang fasih.

Kelebihan utama Laravel Scout adalah kesederhanaannya. Artikel ini menggunakan Algolia, enjin carian berasaskan awan, sebagai pemandu. Walau bagaimanapun, Pengakap menyokong pemandu lain, dan juga membolehkan penciptaan enjin tersuai.

Menyediakan pelayan:

Langkah pertama ialah memasang kebergantungan yang diperlukan menggunakan komposer:

composer require laravel/scout
Seterusnya, daftar penyedia perkhidmatan Pengakap dalam

. Ini memberitahu Laravel tentang ketersediaan perpustakaan. Kami juga akan mengkonfigurasi Algolia dan pemacu pangkalan data ringan. Untuk pelaksanaan enjin tersuai, lihat contoh di bawah. config/app.php

Pelaksanaan enjin tersuai:

Mewujudkan enjin carian tersuai melibatkan melanjutkan kelas

dan melaksanakan kaedah yang diperlukan. Berikut adalah contoh asas: Engine

<?php

namespace App\Engines;

use Laravel\Scout\Builder;
use Laravel\Scout\Engines\Engine;

class CustomScoutEngine extends Engine
{
    public function update($models) {}
    public function delete($models) {}
    public function search(Builder $builder) {}
    public function paginate(Builder $builder, $perPage, $page) {}
    public function mapIds($results) {}
    public function map(Builder $builder, $results, $model) {}
    public function getTotalCount($results) {}
    public function flush($model) {}
}
ingat untuk melaksanakan kaedah abstrak mengikut keperluan khusus anda.

mendaftarkan enjin tersuai:

Daftar enjin tersuai anda dalam kaedah

pembekal perkhidmatan: boot

use App\Engines\CustomScoutEngine;
use Laravel\Scout\EngineManager;

public function boot()
{
    resolve(EngineManager::class)->extend('custom_scout_engine', function () {
        return new CustomScoutEngine;
    });
}
Akhirnya, tentukan enjin tersuai anda dalam

: config/scout.php

'driver' => 'custom_scout_engine',

Kesimpulan:

Panduan ini menyediakan pendekatan praktikal untuk mengintegrasikan keupayaan carian teks penuh ke dalam aplikasi Laravel anda menggunakan Pengakap Laravel. Sama ada anda menggunakan pemacu Algolia terbina dalam atau membuat penyelesaian tersuai, Pengakap memudahkan proses dan meningkatkan pengalaman pengguna dengan membolehkan navigasi kandungan yang cekap.

Atas ialah kandungan terperinci Cara Menyiapkan Carian Teks Penuh Menggunakan Pengakap di Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Cara membuat pembantu laravelArtikel seterusnya:Cara membuat pembantu laravel