Уберите два ->get(), если вам нужно только количество. Сейчас вы получаете коллекцию всех записей и узнаете потом размер коллекции, а если сразу count, то будет обычный COUNT запрос к базе, без загрузки всех сущностей в коллекцию. И это будет работать быстрее.
А объединять и правда нет смысла.
Так и задумано. Ключи, начинающиеся с "_", игнорируются методом fill, который в итоге и используется методами вроде firstOrCreate.
Если добавить в fillable явно или сделать guarded пустым массивом должно сработать.
Ну вы бы в исходный код залезли что ли...
Этот метод использует Arr::only, который просто вызывает array_intersect_key, который никакие точки в ключах не поддерживает. Похоже тут только вручную выбирать из вложенного массива.
Потому что save только сохраняет модель с уже установленными параметрами, перед ним нужно использовать fill, например. https://github.com/illuminate/database/blob/master...
Единственный параметр это массив с настройками сохранения, а не поля модели.
Посмотри, может при каждом обновлении страницы значение в csrf_field разные. Это значит, что проблема с записью в папку сессий и каждый раз стартует новая, поэтому токен никогда не совпадает.
Есть правило валидации active_url.
Если нужна проверка только формата, то можно использовать правило regex и указать туда нагугленную регулярку для URL.
Непонятно, что вы хотите достичь, но есть ручное добавление запроса в этот лог: \DB::logQuery($query, $bindings, $time = null)
Хотя любой запрос сам логгируется. Можно, конечно, в query написать произвольный текст, но это попахивает извращением.
Если нужно просто логгирование действий, может лучше использовать Log::info?