神明 / bounce
一个非常轻量级的 CakePhp 插件,使您的模型能够自动可由 Elastic Search 索引
dev-master
2013-05-18 16:03 UTC
Requires
- php: >=5.3.0
- composer/installers: *
Requires (Dev)
- satooshi/php-coveralls: dev-master
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
(字符串): 指定您的模型索引名称,默认为 maintype
(字符串): 指定您的模型类型名称,默认为您的模型别名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 的另一个插件 其他插件。