У меня есть 2 таблицы settings
и invoices
.
В моей таблице settings
есть столбец с именем amount
, в который я помещаю целочисленное значение (оно всегда будет заполняться), затем в мой invoices
таблица У меня также есть столбец с именем amount
, где значение должно быть из settings
таблица amount
столбец.
Как мы знаем, столбцы отношений обычно основаны на id (primary key)
, поэтому вопрос:
Если я создаю такое отношение в файле миграции, является ли оно правильным (правильным) или нет?
Schema::create('invoices', function (Blueprint $table) {
$table->id();
$table->bigInteger('amount');
$table->timestamps();
});
Schema::table('invoices', function (Blueprint $table) {
$table->foreign('amount')->references('amount')->on('settings');
});
Причина, по которой я пытался установить связь со столбцом amount
вместо столбца id
, заключается в том, я хочу, чтобы этот столбец всегда заполнялся на основе столбца количества настроек и избегал дополнительных функциональных возможностей.
В таблицу настроек Catch my всегда будет включена только 1 строка, поэтому фактически невозможно получить несколько строки или столбец с несколькими суммами из него.
Какова ваша идея (предложения)?