【发布时间】:2016-06-22 11:57:25
【问题描述】:
我正在使用 Symfony NelmioSolariumBundle 并且需要进行 Solr 完整数据导入,有 Solarium 这种类型的命令吗?
如果不是,如何通过 Solarium API 执行自定义数据导入请求:
/core/dataimport?command=full-import
【问题讨论】:
我正在使用 Symfony NelmioSolariumBundle 并且需要进行 Solr 完整数据导入,有 Solarium 这种类型的命令吗?
如果不是,如何通过 Solarium API 执行自定义数据导入请求:
/core/dataimport?command=full-import
【问题讨论】:
找到了方法:
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);
}
}
【讨论】:
您不需要任何魔法,只需使用 file_get_contents("http://....") 调用 URL。如果 fopen 包装器被禁用(通常不会),您可以使用 cURL 模块(如果已安装)来执行相同操作。
【讨论】: