printdeal/pandosearch-bundle

此包已被弃用且不再维护。未建议替换包。

Symfony PandosearchBundle

v1.0.1 2018-11-22 09:24 UTC

README

关于

此包将 Enrise 搜索集成到您的 Symfony 应用程序中。

先决条件

最低 PHP 版本为 7

安装

printdeal/pandosearch-bundle 包添加到 composer.json 文件的 require 部分。

$ composer require printdeal/pandosearch-bundle 1.0.0

将 PrintdealPandosearchBundle 添加到应用程序的 kernel

<?php
public function registerBundles()
{
    $bundles = array(
        // ...
        new Printdeal\PandosearchBundle\PrintdealPandosearchBundle(),
        // ...
    );
    ...
}

用法

在您的 config.yml 中配置 printdeal_pandosearch

printdeal_pandosearch:
    company_name: 'company.com'

您还可以添加搜索请求的默认参数

printdeal_pandosearch:
    company_name: 'company.com'
    query_settings:
        track: false
        full: true
        nocorrect: true
        notiming: true

为了更方便,可以使用具有自定义反序列化实体的可选参数

printdeal_pandosearch:
    deserialization_parameters:
            search_response_entity: Printdeal\PandosearchBundle\Entity\Search\CustomResponse
            suggestion_response_entity: Printdeal\PandosearchBundle\Entity\Suggestion\CustomResponse

在控制器中,您可以使用您的搜索

<?php
// get search results
$searchCriteria = new SearchCriteria();
$searchCriteria->setQuery('searchString');
$this->get('printdeal_pandosearch')->search($searchCriteria);

// get search suggestions
$suggestCriteria = new SuggestCriteria();
$suggestCriteria->setQuery('searchString');
$this->get('printdeal_pandosearch')->suggest($suggestCriteria);