神明/bounce

一个非常轻量级的 CakePhp 插件,使您的模型能够自动可由 Elastic Search 索引

安装: 6

依赖: 0

建议: 0

安全: 0

星标: 4

关注者: 3

分支: 0

开放问题: 0

类型:cakephp-plugin

dev-master 2013-05-18 16:03 UTC

This package is not auto-updated.

Last update: 2024-09-23 14:28:44 UTC


README

一个非常轻量级的 CakePhp 插件,使您的模型能够自动可由 Elastic Search 索引

只需安装插件并附加 Bounce.Indexable,…… 哇!这是将 CakePHP 连接到 Elastic Search 的最简单插件。

安装

通过 git

clone git://github.com/kamisama/bounce.git path/to/app/Plugin/Bounce

通过 Composer

只需在您的 app composer.json 中添加 kamisama/bounce 到 require。

加载插件

通过编辑您的 Config/bootstrap.php 将插件加载到您的应用中

CakePlugin::loadAll(array('Bounce' => array('bootstrap' => true)));

配置

您可以在 Bounce/Config/bootstrap 中编辑连接到您的 Elastic Search 服务器的信息

Configure::write('Bounce', array(
	'host' => '127.0.0.1',
	'port' => '9200'
));

然后附加 Indexable 行为到您的模型

public $actAs = array('Bounce.Indexable');

该行为提供了一些选项

  • index (字符串): 指定您的模型索引名称,默认为 main
  • type (字符串): 指定您的模型类型名称,默认为您的模型别名
  • mapping (字符串): 指定您想要在 Elastic Search 中索引的字段,默认为 false,将索引所有字段。

示例

class Song extends AppModel
{

	public $actAs = array('Bounce.Indexable' => array(
		'index' => 'music',
		'type' => 'song',
		'mapping' => array(
			'title' => 'string',
			'track' => 'integer',
			'length' => 'integer'
		)
	));
}

该行为将只索引标题、轨迹和长度字段,其他所有字段都将被忽略。这些值仅用于 映射

您的模型将在保存、更新和删除时自动索引。

注意

此插件不提供搜索功能,它只是索引您的模型。如果您想要更高级和复杂的索引功能,请查看 kvz 的另一个插件 其他插件