LoginSignup
2

posted at

updated at

Hexabase Flutter SDKで全文検索を行う

Hexabase(ヘキサベース)は企業向けのBaaS(Backend as a Service)を提供しています。認証やデータストア、ファイルストレージ、リアルタイム通知などの機能があり、企業向けのシステム開発に必要な機能をまるっと提供しています。

APIはREST APIとGraphQLを提供しています。そのAPIをラップしたSDKも開発を進めています。SDKは現在、TypeScriptとDart向けに開発しています。Dart向けのSDKは、もちろんFlutterでも利用できます。

この記事ではDart/Flutter SDKについて、全文検索に対応したので使い方を解説します。

Hexabaseの全文検索について

Hexabaseで提供する全文検索は全部で3パターンあります。

  • アイテム
  • 添付ファイル
  • 履歴コメント

全文検索を行う際には、いずれかを指定する必要があります。

全文検索の対象にする

フィールドの設定にて、 全文検索の対象にする をチェックしてください。これがないと、全文検索対象外になります。

image.png

パッケージとソースコード

パッケージはpub.devで公開しています。

hexabase | Flutter Package

ソースコードはGitHubにて公開しています。ライセンスはMIT Licenseです。

hexabase/hexabase-dart: Hexabase SDK for Dart & Flutter

インストール

インストールは dart pub get で行えます。

dart pub get hexabase

インポート

SDKをインポートします。

import 'package:hexabase/hexabase.dart';

初期化

まずインスタンスを作成します。

var client = Hexabase();

別なファイルで再度インポートした場合には、以下でインスタンスを取得してください。

var client = Hexabase.instance;

全検索を行う

全文検索は、まず対象となるデータベースを指定します。

var project = client.project(id: "PROJECT_ID");
var datastore = project.datastore(id: "DATASTORE_ID");

そして検索を実行します。 HBSearchType には history の他、 itemfile が用意されています。それぞれ対象を指定するのに利用します。

var response = await datastore.search(HBSearchType.history, "comment");
print(response.count); // Items count
print(response.items); // Items

まとめ

Hexabaseでは全文検索にelasticを利用し、強力な全文検索を実現しています。データベースや全文検索を独自に構築するのは面倒ですが、Hexabaseを使えば瞬時に利用開始できます。

ぜひBaaSを使ってアプリ開発にチャレンジしてください。

株式会社 Hexabaseー法人向けクラウドシステム『Hexabase』ー

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
2