我已經將Laravel從5.3升級到5.4版本,但是,如果我在提交表單時在文本輸入中有空值,我現在有一個NULL價值而不是空的價格,而這在5.3版本中並未發生。從Laravel 5.3升級到Laravel 5.4並將空字段轉換爲NULL
我現在已經強制設置一個可爲空或需要的驗證規則,我該如何解決這個問題?
我已經將Laravel從5.3升級到5.4版本,但是,如果我在提交表單時在文本輸入中有空值,我現在有一個NULL價值而不是空的價格,而這在5.3版本中並未發生。從Laravel 5.3升級到Laravel 5.4並將空字段轉換爲NULL
我現在已經強制設置一個可爲空或需要的驗證規則,我該如何解決這個問題?
在Laravel 5.4中,有一箇中間件TrimStrings
,它修剪所有空值。
您可以從app/Http/Kernel.php
禁用它。
只需從中間件陣列中刪除\App\Http\Middleware\TrimStrings::class,
即可。
在Laravel 5.4中,包含TrimStrings
和ConvertEmptyStringsToNull
兩個新的中間件。
實際上,對於每個表單請求,Laravel都會自動修剪任何空白區域,同時將所有空請求字段轉換爲空。
如果你想禁用這些,然後簡單地在你的app/Http/Kernel.php
評論。
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
// \App\Http\Middleware\TrimStrings::class,
// \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
];
請閱讀[我可以詢問什麼主題](http://stackoverflow.com/help/on-topic)和[需要避免什麼主題](https://stackoverflow.com/help/dont - 問題)和[如何問一個好問題](http://stackoverflow.com/help/how-to-ask)以及如何創建[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)以及[take the tour](http://stackoverflow.com/tour) –