herbsjs / herbs-cli

Herbs CLI
https://herbsjs.org/
MIT License
29 stars 30 forks source link

herbs update - Entities with relationship #145

Open dalssoft opened 2 years ago

dalssoft commented 2 years ago

Would be great if we improve the behavior of herbs update for cases when entities have relationship with other entities.

one-to-one

    entity('ToDoList', {
        id: field(Number),
        items: field(Item),

This should create a migration with:

            return knex.schema
                .createTable('ToDoList', function (table) {
                    table.string('id').primary()
                    table.string('itemId').references('id').inTable('Item')
                })

one-to-many

    entity('ToDoList', {
        id: field(Number),
        items: field([Item]),

This should create a migration with:

            return knex.schema
                .createTable('ToDoList', function (table) {
                    table.string('id').primary()
                    ...
                })

                .alterTable('Item', function (table) {
                    table.string('itemId').references('id').inTable('ToDoList')
                    ...
                })
dalssoft commented 2 years ago

@endersoncosta is working on it PR: https://github.com/herbsjs/herbs-cli/pull/144