• Как связать лайки и другие сущности в реляционной бд с помощью ORM Sequelize?

    includedlibrary
    @includedlibrary
    Если поле, в данном случае comment_id, добавлено в таблицу, то в каждой строке у этого поле всегда будет значение. Есть вариант убрать поля manga_id и comment_id из таблицы с лайками и добавить два поля

    object_class VARCHAR(255) NOT NULL
    object_id INTEGER NOT NULL


    Для связи лайка с мангой в поле object_class надо вставлять "Manga", а в поле object_id - id манги. Для комментариев соответственно вставлять "Comment" и id комментария. Плюсом данного подхода является то, что при добавлении новой сущности, которую можно лайкать, в таблице с лайками ничего менять не придётся. А главный минус - невозможность использовать внешние ключи.

    Есть ещё вариант создать отдельные таблицы для лайков манги и лайков комментариев.
    Ответ написан
    Комментировать