Мы используем Eloquent без Laravel (длинный рассказ) для приложения, над которым мы работаем, и все идет хорошо, но мы столкнулись с небольшим затруднением при попытке динамически создавать таблицы изнутри приложение.
Приложение в основном представляет собой систему отслеживания и управления заявками, и каждое после отправки пользовательской формы делает запись в нашей таблице tickets
с полем uuid
. Это поле соответствует таблице с именем того же uuid (например, f46ffeec091c4b9d9f406d65a50ab9e6
). Та таблица в базе данных, которая содержит более полную информацию и больше полей, относящихся к заявке.
Я пробовал много разных вариантов сейчас, но каждый раз, когда я пытаюсь запустить что-то вроде
Capsule::query("CREATE TABLE `$uuid` LIKE `tickettable`");
Мы получаем успешное возвращение (по крайней мере, без ошибок), но на самом деле таблица не создается. Мы попробовали с определенными именами классов вместо Capsule
, используя Schema
, запустив его в другом классе (ClassName::query(...);
), $table = new Class(); $table->query(...);
...
Кажется, ничего не работает.
Запуск чего-то вроде Schema::create($uuid, function(Blueprint $table){...});
полностью завершается неудачей.
Запуск Capsule
, кажется, ближе всего к работе, но все еще не игра в кости. Есть мысли?