Socket
Socket
Sign inDemoInstall

backbone-db-elasticsearch

Package Overview
Dependencies
20
Maintainers
2
Versions
15
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    backbone-db-elasticsearch

Elasticsearch driver for backbone-db


Version published
Weekly downloads
15
increased by1400%
Maintainers
2
Install size
5.52 MB
Created
Weekly downloads
 

Readme

Source

backbone-db-elasticsearch

Defining search properties

Example:

var TestModel = Model.extend({
  ...
  type: 'footype',
  searchOptions: {
    index: 'testidx',
  },
  searchValues: function() {
    return this.toJSON();
  }
});

type

Type defines the document's _type field

searchOptions

seachOptions object must define:

  • index: index where document is stored

searchValues

searchValues function should return Object containing keys & values to be indexed.

Adding data to index

var model = new TestModel({
  title: 'testtitle',
  value: 45,
  id: 1
});
model.save();

backbone-db-elasticsearch always expects model to have defined id, thus auto-generated ids are not supported.

After saving above model, the index contains:

GET testidx/test/1
{
   "_index": "testidx",
   "_type": "test",
   "_id": "1",
   "_version": 1,
   "exists": true,
   "_source": {
      "title": "testtitle",
      "value": 45,
      "id": 1
   }
}

Updating a document

If you want to update a document, save it with update option set to true.

var model = new TestModel({
  title: 'newtitle',
  id: 1
});
model.save(null, {update: true});

Querying documents

var query = {
  wildcard: {
    name: '*abc*'
  }
};
var collection = new this.Collection();
collection.fetch({query: query})

Options

query

Accepts query DSL options as Object.

index

Define index to search from. Supports also multi index syntax.

type

Apply search to only given type(s).

filter

Apply filter to the query.

sort

Apply sort to query.

indicesBoost

Boost defined indices.

msearch

If set to true, do a multi search

Notes

This adapter is not fully backbone-db compliant, since query DSL is using Elasticsearch syntax, instead of MongoDB syntax. Currently supported version of ES is 1.3.2.

Configuration

Dynamic scripting should be enabled in /usr/local/opt/elasticsearch/config/elasticsearch.yml:

script.disable_dynamic: false

Keywords

FAQs

Last updated on 12 Dec 2014

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc