use Illuminate\Contracts\Validation\Rule;
use Illuminate\Support\Facades\DB;
class ValidCustomInputRule implements Rule
{
public function passes($attribute, $value)
{
$sum = DB::table('table_name')->sum('column_name');
return $value <= $sum;
}
public function message()
{
return 'The input value is greater than the sum of the column in the database.';
}
}
2条答案
按热度按时间xmjla07d1#
您可以在表单请求中创建自定义验证规则,并在规则本身中执行DB查询。
您可以创建自定义验证规则并在规则中使用
您可以使用php artisan make:rule ValidCustomInputRule来制作它
rwqw0loc2#
我认为如果你想把所有的信息都保存在你的表单请求中,你可以使用闭包。
如果这不起作用,我想您可以将其添加到
after
钩子中。