Это должно быть просто, но я не могу найти его в документации или в другом месте. Как я могу получить TRUNCATE...CASCADE
таблицу с внешними ключами в Laravel 5.1 с использованием Eloquent ORM? Использование только User::truncate();
не проходит через аргумент CASCADE
.TRUNCATE ... CASCADE в Laravel 5
5
A
ответ
6
Похоже, единственный способ сделать это с помощью оператора непосредственно:
DB::statement('TRUNCATE users CASCADE');
0
Если вам нужно truncate
более одной таблицы, вы можете удалить CASCADE
ключевое слово и предоставить список имен таблиц, разделенных по запятой.
$tables = [
'roles',
'role_users',
'users',
'revisions',
];
if (count($tables) > 1) {
DB::statement('TRUNCATE TABLE ' . implode(',', $tables) . ';');
} else {
DB::statement('TRUNCATE TABLE ' . $tables[0] . ' CASCADE;');
}
Смежные вопросы
- 1. laravel cascade не работает?
- 2. Laravel - onDelete ("cascade") не работает
- 3. Laravel Eloquent truncate - Ограничение внешнего ключа
- 4. laravel 5 - Красноречивые отношения
- 5. Запрос в laravel 5
- 6. Laravel 5 Удаление отношения
- 7. MVC 5 Получить значения из Cascade Dropdowns
- 8. Обновление миграции Laravel 5
- 9. Использовать пользовательский класс в Laravel 5
- 10. Laravel package config file override/cascade
- 11. Laravel 5 - Laravel \ Collective
- 12. Кэширование в laravel 5
- 13. Paginator в Laravel 5
- 14. Просмотр в Laravel 5
- 15. csrf_token() в Laravel 5
- 16. PHPWord в Laravel 5
- 17. Крючки в Laravel 5?
- 18. Отношения в Laravel 5
- 19. OrderBy в Laravel 5
- 20. Языки в laravel 5
- 21. Laravel 5 обновление сводной таблицы
- 22. Laravel 5 Captcha в Laravel 5 не отображается
- 23. Laravel 5 with Foundation 5
- 24. Как создать миграцию таблицы в Laravel 5
- 25. laravel 5 pagination issue 5
- 26. MySQL: ошибка в truncate `myTable`, когда FK имеет включенное значение Cascade
- 27. Laravel 5 vsmoraes/laravel-pdf
- 28. Laravel 5 вставить данные в соответствующие таблицы?
- 29. Laravel 5 - "Laravel новые" Команда
- 30. Laravel 5 и Laravel 4
Является ли база данных MySQL? – gmsantos
Нет, я использую Postgres - я хочу сделать это без написания исходного SQL –
Не думаю, что это возможно. Я ничего не вижу в API для этого и небольшого исследования, которое я сделал, похоже, что люди просто используют 'DB :: statement ('TRUNCATE users CASCADE');' – user3158900