Добавить значение столбца из другой таблицы в качестве константы по умолчанию

У меня есть отношения hasOne. Табличные слова имеют одну категорию, а табличные категории принадлежат слову. Категории имеют внешний ключ word_id. Как мне сделать так, чтобы значение для word_id в категориях по умолчанию бралось из столбца id в словах таблицы??


person Waldemar Karasik    schedule 18.04.2020    source источник
comment
Если ваша таблица words и таблица categories находятся в отношениях один к одному, каков ваш вопрос? Вы можете дать больше объяснений?   -  person Senthur    schedule 18.04.2020
comment
Единственный способ, который я знаю, как это сделать, это настроить его в вашей миграции. Настройте там столбец внешнего ключа и используйте -›default(1) или любое другое значение по умолчанию, которое вам нужно (ссылаясь на значения другой таблицы).   -  person Savlon    schedule 18.04.2020
comment
Пожалуйста, предоставьте подробный пример этих таблиц   -  person Mulli    schedule 19.04.2020


Ответы (1)


Я не уверен, понимаю ли я ваш вопрос, но предполагаю, что вы правильно настроили свои модели для Отношение «один к одному», Laravel может автоматически заполнять столбец word_id, когда вы создаете новую категорию из существующего слова.

Пример:

$word->category()->create([
    'some_key' => 'Some value', // Don't need to pass word_id, Laravel will fill it automatically
]);
person LobsterBaz    schedule 18.04.2020