У меня есть таблица тестовых вопросов и таблица тестовых ответов. Каждый тестовый ответ имеет поле question_id, которое связывает его с вопросом. У каждого вопроса есть поле course_id и поле test_type (1 или 2 в зависимости от того, является ли тест до или после).
Я пытаюсь создать функцию в контроллере laravel, которая будет дублировать предварительный или последующий тест в любой другой тип теста. Мой код в настоящее время выглядит так:
public function tcopy (Request $request) {
$courseId = $request->input('data.courseId');
$copyToTest = $request->input('data.copyToTest');
$copyFromTest = $request->input('data.copyFromTest');
// Delete any answers currently in the new test type
$toTestQuestionsOld = Question::where('course_id', $courseId)
->where('test_type', $copyToTest)
->delete();
$fromTestQuestions = Question::where('course_id', $courseId)
->where('test_type', $copyFromTest)
->get();
Я просто не уверен, что поставить после этого, чтобы клонировать коллекцию (которая будет состоять как из вопросов, так и связанных с ними ответов). Я посмотрел в $ newCollection = clone $ oldCollection, но, похоже, поля идентификаторов остаются такими же, что просто заменит fromTestQuestions, верно?
Спасибо за любую помощь!