Эта проблема была исправлена в Laravel 5.4.9.Laravel TransformRequest не применяется к собственным классам запросов
Два новых класса промежуточного программного обеспечения не применяются к моим собственным запросам. Два новых промежуточного слоя являются:
\App\Http\Middleware\TrimStrings::class
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class
Однако, они не применяют свои изменения в моих собственных запросов. Например, у меня есть этот запрос:
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Support\Facades\Auth;
class CreateStoreRequest extends FormRequest
{
public function authorize()
{
return Auth::check();
}
public function rules()
{
var_dump($this->all()); // Content not handled by middleware
return [
// Rules
];
}
}
Когда я использую var_dump, я вижу, что содержимое не изменено.
Если я использую Illuminate\Http\Request
в моем контроллере, он работает.
Есть ли способ реализовать изменения в моих собственных классах запросов?
Когда вы используете CreateStoreRequest в своем методе, попробуйте dd ($ request-> all()) и поделитесь результатом, он должен корректно работать –
Возвращает необработанный контент. Я также отлаживал функции, и они работают. Если я использую запрос помощника («поле»), он возвращает обработанный контент. Проблема в том, что я хочу использовать обработанный контент в моем собственном классе запросов для проверки. – andershagbard
обрезать и преобразовать его вручную (используйте функции trim() и terany для преобразования). Я думаю, что эти средние работы работают после запроса –