Можно ли как-то прокинуть значение из одной таблицы в другую?

В Laravel есть несколько способов прокинуть значение из одной таблицы в другую. Один из наиболее распространенных способов - использование отношений между моделями.

Допустим, у нас есть две таблицы - "users" и "orders". Таблица "users" содержит информацию о пользователях, а таблица "orders" содержит информацию о заказах. Пусть у нас есть поле "user_id" в таблице "orders", которое должно содержать идентификатор пользователя, связанного с данным заказом.

Для связывания этих двух таблиц вам понадобится создать модели "User" и "Order". В модели "User" вы можете определить связь "hasMany" с моделью "Order", а в модели "Order" - связь "belongsTo" с моделью "User".

Пример кода:

// User.php

namespace App;

use IlluminateDatabaseEloquentModel;

class User extends Model
{
    public function orders()
    {
        return $this->hasMany(Order::class);
    }
}

// Order.php

namespace App;

use IlluminateDatabaseEloquentModel;

class Order extends Model
{
    public function user()
    {
        return $this->belongsTo(User::class);
    }
}

Теперь, когда у нас есть связь между моделями, вы можете получить доступ к данным пользователя из заказа или наоборот.

Пример кода:

$order = Order::find(1);
$user = $order->user;

В этом примере мы получаем заказ с идентификатором 1 и затем получаем связанного с ним пользователя.

Также вы можете использовать эти связи при создании нового заказа и автоматически устанавливать значение поля "user_id" при создании записи:

$user = User::find(1);
$order = new Order;
$order->user()->associate($user);
$order->save();

В этом примере мы создаем новый заказ и связываем его с пользователем с идентификатором 1.