, это не работает.

ичок в Laravel. Я пытаюсь использовать Eloquent Model для доступа к данным в БД.

У меня есть таблицы, которые имеют общие черты, такие как имя таблицы.

Поэтому я хочу использовать одну модель для доступа к нескольким таблицам в БД, как показано ниже, но без везения.

Есть ли способ установить имя таблицы динамически?

Любые предложения или советы будут оценены. Заранее спасибо.

Модель:

class ProductLog extends Model
{

    public $timestamps = false;

    public function __construct($type = null) {

        parent::__construct();

        $this->setTable($type);
    }
}

контроллер:

public function index($type, $id) {

    $productLog = new ProductLog($type);

    $contents = $productLog::all();

    return response($contents, 200);
}

Решение Для тех, кто страдает той же проблемой:

Мне удалось изменить имя таблицы по предложению @Mahdi Younesi.

И я смог добавить, где условия, как показано ниже

$productLog = new ProductLog;
$productLog->setTable('LogEmail');

$logInstance = $productLog->where('origin_id', $carrier_id)
                          ->where('origin_type', 2);

Ответы на вопрос(1)

Ваш ответ на вопрос