我有一個關於Laravel 4和驗證概念的問題。Laravel4 Validator和空字段
我有我的MySQL表和我的模型Calass .. 我們可以假設我們有一個可爲空場...
如果該字段不爲空,我怎麼能驗證呢? (例如我會我MAXVALUE的整數值<)
我有一個關於Laravel 4和驗證概念的問題。Laravel4 Validator和空字段
我有我的MySQL表和我的模型Calass .. 我們可以假設我們有一個可爲空場...
如果該字段不爲空,我怎麼能驗證呢? (例如我會我MAXVALUE的整數值<)
,您可以創建驗證到模型
例:
class User extends Eloquent {
protected $table = 'users';
public $timestamps = false;
public static function validate($input) {
$rules = array(
# place-holder for validation rules
);
# validation code
}
}
爲更說明有關驗證laravel book
除非添加'必需'規則,否則驗證將始終將字段視爲可選項。因此,如果字段爲空或空字符串,則規則如numeric|max:9000
將是有效的,但是如果提供它必須是小於9000的數字。
要防止將空字符串或空字符串保存到數據庫(MySQL會將其轉換爲0作爲整數字段),您可以爲該屬性設置一個增變器。在你的模型:
public function setNumberAttribute($value)
{
if ($value !== null && is_numeric($value)) {
$this->attributes['number'] = (int) $value;
}
}
我認爲你可以沒有這個功能。我在laravel文檔中找不到 –
默認情況下,所有字段都是可以爲空的,除非您使它們不爲空。你會像其他任何東西一樣驗證它們。您還應該注意到,Validator類不關心數據庫中的列,它所做的只是驗證數據。 – user3158900