{"id":16086572,"url":"https://github.com/ksdaemon/sails-hook-sequelize","last_synced_at":"2025-04-06T22:09:23.249Z","repository":{"id":35742047,"uuid":"40020961","full_name":"KSDaemon/sails-hook-sequelize","owner":"KSDaemon","description":"Sails.js hook to use sequelize ORM","archived":false,"fork":false,"pushed_at":"2024-06-16T11:01:38.000Z","size":3643,"stargazers_count":67,"open_issues_count":8,"forks_count":53,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-10-23T10:38:38.720Z","etag":null,"topics":["orm","sails-hook","sailsjs","sequelize-orm"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KSDaemon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-07-31T19:13:45.000Z","updated_at":"2023-03-05T23:49:02.000Z","dependencies_parsed_at":"2023-02-18T16:01:45.763Z","dependency_job_id":"2b5f3d81-4a74-4bbd-b5ac-4b2f2c962db7","html_url":"https://github.com/KSDaemon/sails-hook-sequelize","commit_stats":{"total_commits":188,"total_committers":13,"mean_commits":"14.461538461538462","dds":0.3457446808510638,"last_synced_commit":"e8f8d1ad2bad0257133f69dcbbcc3b0830b51bcc"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KSDaemon%2Fsails-hook-sequelize","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KSDaemon%2Fsails-hook-sequelize/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KSDaemon%2Fsails-hook-sequelize/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KSDaemon%2Fsails-hook-sequelize/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KSDaemon","download_url":"https://codeload.github.com/KSDaemon/sails-hook-sequelize/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247557767,"owners_count":20958047,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["orm","sails-hook","sailsjs","sequelize-orm"],"created_at":"2024-10-09T13:13:40.196Z","updated_at":"2025-04-06T22:09:23.230Z","avatar_url":"https://github.com/KSDaemon.png","language":"JavaScript","readme":"# sails-hook-sequelize\nSails.js hook to use sequelize ORM\n\n[![NPM version][npm-image]][npm-url]\n[![Build Status][gh-build-test-image]][gh-build-test-url]\n[![Code coverage][coveralls-image]][coveralls-url]\n[![MIT License][license-image]][license-url]\n[![Known Vulnerabilities][snyk-image]][snyk-url]\n\n# Installation\n\nInstall this hook with:\n\n```sh\n$ npm install sails-hook-sequelize --save\n```\n\n# Configuration\n\n`.sailsrc`\n\n```\n{\n  \"hooks\": {\n    \"orm\": false,\n    \"pubsub\": false\n  }\n}\n```\n\nAlso you can set some parameters in `config/sequelize.js` to override defaults.\n\n```\nmodule.exports.sequelize = {\n    \"clsNamespace\": \"myAppCLSNamespace\",\n    \"exposeToGlobal\": true\n};\n```\n\n## Connections\n\nSequelize connection.\n\n**Important note:** `dialect` keyword MUST be present in connection or connection.options.\n\n```javascript\nsomePostgresqlServer: {\n  user: 'postgres',\n  password: '',\n  database: 'sequelize',\n  dialect: 'postgres',\n  options: {\n    dialect: 'postgres',\n    host   : 'localhost',\n    port   : 5432,\n    logging: console.log        // or specify sails log level to use ('info', 'warn', 'verbose', etc)\n  }\n}\n```\n\n## Models\n\nSequelize model definition `models/user.js`\n\n```javascript\nmodule.exports = {\n  attributes: {\n    name: {\n      type: Sequelize.STRING,\n      allowNull: false\n    },\n    age: {\n      type: Sequelize.INTEGER\n    }\n  },\n  associations: function() {\n    user.hasMany(image, {\n      foreignKey: {\n        name: 'owner',\n        allowNull: false\n      }\n    });\n  },\n  defaultScope: function() {\n    return {\n      include: [\n        {model: image, as: 'images'}\n      ]\n    }\n  },\n  options: {                                  // Options must exists (even if empty) in order to consider this model a Sequelize model\n    tableName: 'user',\n    classMethods: {},\n    instanceMethods: {},\n    hooks: {},\n    scopes: {},\n  },\n  connection: 'NotDefaultModelsConnection'    // Can be omitted, so default sails.config.models.connection will be used\n};\n```\n\n# Contributors\nThis project was originally created by Gergely Munkácsy (@festo).\nNow is maintained by Konstantin Burkalev (@KSDaemon).\n\n# License\n[MIT](./LICENSE)\n\nThanks JetBrains for support! Best IDEs for every language!\n\n[![JetBrains](https://user-images.githubusercontent.com/458096/54276284-086cad00-459e-11e9-9684-47536d9520c4.png)](https://www.jetbrains.com/?from=wampy.js)\n\n[npm-url]: https://www.npmjs.com/package/sails-hook-sequelize\n[npm-image]: https://img.shields.io/npm/v/sails-hook-sequelize.svg?style=flat\n\n[gh-build-test-url]: https://github.com/KSDaemon/sails-hook-sequelize/actions/workflows/build-and-test.yml\n[gh-build-test-image]: https://github.com/KSDaemon/sails-hook-sequelize/actions/workflows/build-and-test.yml/badge.svg\n\n[coveralls-url]: https://coveralls.io/github/KSDaemon/sails-hook-sequelize\n[coveralls-image]: https://img.shields.io/coveralls/KSDaemon/sails-hook-sequelize/master.svg?style=flat\n\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\n[license-url]: http://opensource.org/licenses/MIT\n\n[snyk-image]: https://snyk.io/test/github/KSDaemon/sails-hook-sequelize/badge.svg?targetFile=package.json\n[snyk-url]: https://snyk.io/test/github/KSDaemon/sails-hook-sequelize?targetFile=package.json\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fksdaemon%2Fsails-hook-sequelize","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fksdaemon%2Fsails-hook-sequelize","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fksdaemon%2Fsails-hook-sequelize/lists"}