-
-
Notifications
You must be signed in to change notification settings - Fork 175
JsValidator Class
albertmoreno edited this page Mar 23, 2015
·
17 revisions
A Proengsoft\JsValidation\JsValidator
instance is returned by the Facade methods.
The mainly use of this object is to provide the converted rules and messages to the view, for propper rendering of Javascript code.
To customize the view refer to Javascript Rendering and JQuery Validation Plugin documentation.
[Arrayable interface](#arrayable-interface)
[public function render()](#renderview)
[public function __toString()](#__tostring)
This class implements Illuminate\Contracts\Support\Arrayable interface tho provide validation data to view. This keys are provided:
-
selector
JQuery selector to find the form to validate. -
rules
JQuery Validation Plugin rules to validate the form -
messages
Messages displayed when validation fails.
Render the specified view with validator data
-
$view
(lluminate\Contracts\View\View|string|null) View used to render the Javascript initialization code. Optional, by default view definned in Configuration will be used by default.
-
string
. the html and Javascript code to initialize the validators.
Controller
$validator = JsValidator::make(['name' => 'required|min:5']);
// ...
return view('my-form-view', ['validator'=>$validator]);
View
<form>
<input name="name" />
</form>
{!! $validator->render('my-custom-javascript-view') !!}
When this class is converted to string is called render
method with default view
public function __toString()
{
try {
return $this->render();
} catch (\Exception $e) {
return '';
}
}