У меня есть следующий запрос, чтобы получить случайный вопрос из моей базы данных:Laravel - не показывают ту же запись дважды, используя inRandomOrder()
$q = Question::inRandomOrder()->first();
Каждый вопрос я генерации сохраняется в user_questions
с следующая структура:
id | question_id | user_id
Моя цель состоит в том, чтобы генерировать случайный вопрос, используя красноречивый выше запрос и исключить все вопросы, пользователь уже имеет.
Например, если имеются следующие записи в моей таблице user_questions:
1 | 133 | 234
2 | 134 | 234
3 | 543 | 234
запрос, возвращающие случайный вопрос исключая 133,134 и 543.
Любые идеи?
Я думаю, вы должны найти способ, чтобы соответствовать извлеченный случайный запрос к массиву уже ответил один. Если в нем игнорировать, в противном случае, показывать пользователю. Если есть что-то вроде «ifExist», которое вы могли бы сделать, тогда вы проверяете столбец для некоторых данных, если они выходят, иначе попробуйте еще раз. – Rexford