Задать вопрос

Как хранить код страниц в Laravel?

Есть сайт на Laravel 8 и админка к нему, все самописное.
Встал вопрос дать юзерам генерить странички из админки и тут собственно вопрос:
Где хранить код, который напишет юзер? В БД? В файлах? Если в файлах нужно юзать кеш?
Вообще еще такого не делал и не понимаю как правильно. Фронтом в пике будет пользоваться примерно 500 человек.
  • Вопрос задан
  • 177 просмотров
Подписаться 1 Простой 2 комментария
Ответ пользователя Александр Аблизин К ответам на вопрос (3)
mcmraak
@mcmraak
php+sql+js+bicycle+crutches
Я бы хранил в файлах, создайте в storage папку для хранения и создайте геттер и сеттер (или акцессор и мутатор, кому как нравиться) для модели. К примеру у вас есть модель App\Models\Page
public function getCodeAttribute(): string
{
    return file_get_contents(storage_path("pages/page_{$this->id}.html"));
}
public function setCodeAttribute(string $html_code): void
{
    file_put_contents(storage_path("pages/page_{$this->id}.html"), $html_code);
}

Не забыть при удалении экземпляра модели удалить и файл, для этого используйте события модели.
Ответ написан
Комментировать