Symfony 日光浴室数据导入

Symfony Solarium Data Import

我正在使用 Symfony NelmioSolariumBundle 并需要导入 Solr 完整数据,有 Solrium 这类命令吗?

如果不是,如何通过 Solarium 执行自定义数据导入请求API:

/core/dataimport?command=full-import

你不需要任何魔法来做到这一点,只需用 file_get_contents("http://....") 调用 URL。如果 fopen 包装器被禁用(它们通常不被禁用),您可以使用 cURL 模块(如果已安装)来执行相同的操作。

找到方法了:

use Solarium\Core\Client\ClientInterface,
    Solarium\Core\Client\Request;

class IndexService
{
    /** @var ClientInterface */
    private $client;

    /**
     * @param ClientInterface $client
     */
    public function __construct(ClientInterface $client)
    {
        $this->client = $client;
    }

    public function triggerFullDataImport()
    {
        $request = new Request();
        $request->setHandler('dataimport');
        $request->addParam('command', 'full-import');

        $this->client->executeRequest($request);
    }
}