Konsep Utama:
Penciptaan Aplikasi & Pemasangan Solarium:
Buat aplikasi Laravel baru:
composer create-project laravel/laravel movie-search --prefer-dist
yang boleh ditulis. Pasang solarium melalui komposer: app/storage
"solarium/solarium": "dev-develop"
anda. composer.json
konfigurasi solarium:
Buat fail konfigurasi (): app/config/solr.php
return array( 'host' => '127.0.0.1', 'port' => 8983, 'path' => '/solr/', );
(dalam aplikasi Laravel yang lebih besar, pembekal perkhidmatan akan lebih disukai.) app/controllers/HomeController.php
protected $client; public function __construct() { $this->client = new \Solarium\Client(Config::get('solr')); }
Gunakan pertanyaan ping untuk mengesahkan kebolehcapaian SOLR:
Fail CSV filem contoh (mengandungi ~ 2000 filem) diperlukan. Anda boleh memuat turun satu, atau menggunakan API Rotten Tomatoes (data IMDB juga tersedia tetapi kurang mudah).
Menambah, mengemas kini, dan memadam dokumen:
$ping = $client->createPing(); try { $result = $client->ping($ping); } catch (Solarium\Exception $e) { // Handle SOLR inaccessibility }
Menambah dokumen:
Pengemaskinian memerlukan tambah semula dengan ID yang sama. Memadam Kegunaan
:
$update = $client->createUpdate(); $doc = $update->createDocument(); $doc->id = 123; $doc->title = 'Some Movie'; $update->addDocument($doc); $update->addCommit(); $result = $client->update($update);
memaparkan indeks carian: addDeleteQuery
$update = $client->createUpdate(); $update->addDeleteQuery('id:123'); // Or use wildcards: 'title:test*' $update->addCommit(); $result = $client->update($update);
) untuk mengimport data CSV. Dalam , gunakan kaedah untuk membaca CSV, buat dokumen solarium, dan indeksnya. (Contoh kod yang disediakan menunjukkan proses ini.) Jalankan perintah:
.
php artisan command:make PopulateSearchIndexCommand
app/commands/PopulateSearchIndexCommand.php
Borang carian (bilah Laravel): fire()
php artisan search:populate
: (susun atur asas dalam Kesimpulan: Artikel ini menetapkan peringkat untuk membina mekanisme carian menggunakan Solarium dan Solr. Bahagian seterusnya akan meliputi pelaksanaan fungsi carian sebenar. Seksyen Soalan Lazim yang disediakan telah ditinggalkan kerana ia berlebihan memandangkan penjelasan terperinci yang telah disediakan. Atas ialah kandungan terperinci Menggunakan solarium dengan solr untuk carian - solarium dan gui. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!composer create-project laravel/laravel movie-search --prefer-dist
app/views/layouts/default.blade.php
dan penghalaan dalam app/routes.php
juga diperlukan, seperti yang ditunjukkan dalam contoh asal.)