https://github.com/coreh/feathers-sequelize-replicated
Fork of feathers-sequelize
https://github.com/coreh/feathers-sequelize-replicated
Last synced: over 1 year ago
JSON representation
Fork of feathers-sequelize
- Host: GitHub
- URL: https://github.com/coreh/feathers-sequelize-replicated
- Owner: coreh
- License: mit
- Created: 2017-10-17T00:00:32.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-11-28T15:53:09.000Z (over 8 years ago)
- Last Synced: 2025-02-01T19:12:49.246Z (over 1 year ago)
- Language: JavaScript
- Homepage: https://github.com/feathersjs/feathers-sequelize
- Size: 190 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/contributing.md
- License: LICENSE
Awesome Lists containing this project
README
# feathers-sequelize
[](https://greenkeeper.io/)
[](https://travis-ci.org/feathersjs/feathers-sequelize)
[](https://codeclimate.com/github/feathersjs/feathers-sequelize)
[](https://codeclimate.com/github/feathersjs/feathers-sequelize/coverage)
[](https://david-dm.org/feathersjs/feathers-sequelize)
[](https://www.npmjs.com/package/feathers-sequelize)
[](http://slack.feathersjs.com)
> A service adapter for [Sequelize](http://sequelizejs.com), an SQL ORM
## Installation
```bash
npm install feathers-sequelize --save
```
## Documentation
Please refer to the [Feathers database adapter documentation](http://docs.feathersjs.com/databases/readme.html) for more details or directly at:
- [Sequelize](http://docs.feathersjs.com/databases/sequelize.html) - The detailed documentation for this adapter
- [Extending](http://docs.feathersjs.com/databases/extending.html) - How to extend a database adapter
- [Pagination and Sorting](http://docs.feathersjs.com/databases/pagination.html) - How to use pagination and sorting for the database adapter
- [Querying](http://docs.feathersjs.com/databases/querying.html) - The common adapter querying mechanism
### Complete Example
Here is an example of a Feathers server with a `todos` SQLite Sequelize Model:
```js
import path from 'path';
import feathers from 'feathers';
import rest from 'feathers-rest';
import bodyParser from 'body-parser';
import Sequelize from 'sequelize';
import service from 'feathers-sequelize';
const sequelize = new Sequelize('sequelize', '', '', {
dialect: 'sqlite',
storage: path.join(__dirname, 'db.sqlite'),
logging: false
});
const Todo = sequelize.define('todo', {
text: {
type: Sequelize.STRING,
allowNull: false
},
complete: {
type: Sequelize.BOOLEAN,
defaultValue: false
}
}, {
freezeTableName: true
});
// Create a feathers instance.
const app = feathers()
// Enable REST services
.configure(rest())
// Turn on JSON parser for REST services
.use(bodyParser.json())
// Turn on URL-encoded parser for REST services
.use(bodyParser.urlencoded({ extended: true }));
// Removes all database content
Todo.sync({ force: true });
// Create an sqlite backed Feathers service with a default page size of 2 items
// and a maximum size of 4
app.use('/todos', service({
Model: Todo,
paginate: {
default: 2,
max: 4
}
}));
// Start the server
app.listen(3030);
console.log('Feathers Todo Sequelize service running on 127.0.0.1:3030');
```
You can run this example by using `node examples/app` and going to [localhost:3030/todos](http://localhost:3030/todos). You should see an empty array. That's because you don't have any Todos yet but you now have full CRUD for your new todos service.
## License
Copyright (c) 2015
Licensed under the [MIT license](LICENSE).