我正在尝试在Algolia中创建一个与我的第一个索引相同的新索引,但是我的第一个索引会有不同的数据。我希望有一个新西兰的联系人索引和非盟的另一个。
我在random.NextDouble() * (double.MaxValue - min) + min;
random.NextDouble() * (double.MinValue + max) - max;
中使用了此函数中的条件。但它不能正常工作,我不知道这个功能是否是我需要的。
这就是我创造它的方式
indexOnly($index_name)
然后我运行reindex函数。
上述方法在我的class Contact extends Model {
use AlgoliaEloquentTrait;
protected $table = 'contacts';
public $indices = ['contacts_local'];
/** ALGOLIA SETTINGS */
public function getAlgoliaRecord()
{
return fractal()->item($this)->transformWith(new ContactTransformer)->toArray();
}
private $index_name = 'contacts_local';
public function indexOnly($index_name) {
return $this->contact_country == 'New Zealand';
}
}
索引中不返回任何内容。
我在这里做错了什么?
我在数据库中使用相同的表,但两个索引将具有不同的数据,具体取决于contacts_local
的{{1}}。这会在Algolia中成为可能吗?
答案 0 :(得分:4)
我不确定Algolia Laravel / Eloquent整合是否可行。我会做的是:
_tags
属性中)tagFilters
(https://www.algolia.com/doc/guides/search/filtering-faceting#filter-by-tag)哈希生成一些仅限于特定国家/地区的密钥这比每个国家/地区拥有1个索引更容易,也更快。