我正在尝试验证特定book_id的唯一问题
它意味着应该是唯一的特定记录.
table: questions
$title = this is question 1
$book_id = 12
TRUE =如果$book_id = 16未发布问题,用户可以发布相同的问题.
显示错误=如果发布了$book_id = 12的问题,用户无法发帖.
这是我到目前为止所尝试的
"required|unique:questions,question,book_id".$book_id,
"required|unique:questions,question,book_id,!".$book_id,
"required|unique:questions,question,NULL,id,book_id,".!$book_id,
解决方法:
您可以进行如下自定义验证
class CustomValidator extends \Illuminate\Validation\Validator {
public function ValidatecheckQuestion($attribute, $value, $parameters) {
$cnt = DB::table('questions')->where('title','=',$parameters[0])
->where('book_id','=',12)
->count();
if($cnt==0)
return false;
else
return true;
}
}
请参阅https://laravel.com/docs/5.0/validation#custom-validation-rules以了解如何准确使用自定义验证