меня на сайте должны быть счета, но счет может быть либо для заказа, либо для посылки, что лучше сделать?
1. таблицу invoice с type, order_id, package_id и еще OrderInvoice + PackageInvoice со своими даннными
2. создать одну модель invoice и далее создать поле json metadata и в зависимости от того, будет там order_id или package_id делать свое? буду благодарен вам за ваше мнение!
Зависит от того как удобнее, первый вариант полиморфная связь обычно предпочтительней, особенно если выбирать по ним надо. type + id, ларка умеет
отлично, благодарю, перейду на первый вариант
кстати, если не секрет, а почему ты не рассматриваешь вариант просто с 2 разными таблицами?
потому что не удобно будет выводить их
ладно в админке ещё разделение сделать
а у пользователя одна страница с чеками, где он их может оплачивать
просто на уровне БД консистентность полиморфных связей вроде не поддерживается (мб правда есть какие-то костыли, я хз)
Обсуждают сегодня