Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use Illuminate\Support\Arr;
- use Illuminate\Database\Eloquent\Relations\Relation;
- use Illuminate\Support\Facades\Validator;
- Validator::extend('poly_exists', function ($attribute, $value, $parameters, $validator) {
- // usage:
- // 'commentable_id' => 'required|poly_exists:commentable_type
- if (! $type = Arr:get($validator->getData(), $parameters[0], false)) {
- return false;
- }
- if (Relation::getMorphedModel($type)) {
- $type = Relation::getMorphedModel($type);
- }
- if (! class_exists($type)) {
- return false;
- }
- return ! empty(resolve($type)->find($value));
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement