> For the complete documentation index, see [llms.txt](https://reloaderlev.gitbook.io/russian-goit-node-js-new-program/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://reloaderlev.gitbook.io/russian-goit-node-js-new-program/bazy-dannykh/sozdanie-modeli-i-skhemy-v-sequelize.md).

# Создание модели и схемы в Sequelize

В sequelize существует два способа создания новой модели:&#x20;

* через метод sequelize.define&#x20;
* отнаследоватся от встроенного класса Model, создать собственный класс модели и вызвать ее init метод. Лучше применять этот способ, так как его легче расширить под свои нужды (добавить новые методы для удобства работы)&#x20;

Пример создания новой модели:

```
const { Model } = Sequelize;

async function main() {
    class User extends Model {}
    User.init({
        name: { type: Sequelize.STRING, allowNull: false },
        surname: { type: Sequelize.STRING, allowNull: false },
    }, {
        sequelize,
        modelName: 'User',
    });
    
    await sequelize.sync();
}

main();
```
