Storing state in Laravel rule? And apply rule to multiple fields?
up vote
0
down vote
favorite
I'm trying to write a Rule in Laravel for verifying whether an address is deliverable.
Now, the API I use stores the result of an address check, and returns an address object as well as the ID. If the form passes validation, I'd like to store the address ID without verifying it again.
If I were to do the address check within a rule, how would I store that object from the validator function for access with the create function?
Additionally, how do I pass multiple fields to the same rule? I need this rule to validate all the fields of the address at the same time, not just one.
protected function validator(array $data)
{
return Validator::make($data, [
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:6', 'confirmed'],
// For example
'street1,street2,city,state,zip' => new Deliverable(),
]);
}
protected function create(Request $request)
{
return User::create([
'name' => $data['name'],
'email' => $customer['email'],
'password' => Hash::make($data['password']),
// Get the some state from the Deliverable I made earlier.
]);
}
Obviously I can't save the deliverable in the controller because each request will have a different address.
laravel laravel-5
add a comment |
up vote
0
down vote
favorite
I'm trying to write a Rule in Laravel for verifying whether an address is deliverable.
Now, the API I use stores the result of an address check, and returns an address object as well as the ID. If the form passes validation, I'd like to store the address ID without verifying it again.
If I were to do the address check within a rule, how would I store that object from the validator function for access with the create function?
Additionally, how do I pass multiple fields to the same rule? I need this rule to validate all the fields of the address at the same time, not just one.
protected function validator(array $data)
{
return Validator::make($data, [
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:6', 'confirmed'],
// For example
'street1,street2,city,state,zip' => new Deliverable(),
]);
}
protected function create(Request $request)
{
return User::create([
'name' => $data['name'],
'email' => $customer['email'],
'password' => Hash::make($data['password']),
// Get the some state from the Deliverable I made earlier.
]);
}
Obviously I can't save the deliverable in the controller because each request will have a different address.
laravel laravel-5
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I'm trying to write a Rule in Laravel for verifying whether an address is deliverable.
Now, the API I use stores the result of an address check, and returns an address object as well as the ID. If the form passes validation, I'd like to store the address ID without verifying it again.
If I were to do the address check within a rule, how would I store that object from the validator function for access with the create function?
Additionally, how do I pass multiple fields to the same rule? I need this rule to validate all the fields of the address at the same time, not just one.
protected function validator(array $data)
{
return Validator::make($data, [
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:6', 'confirmed'],
// For example
'street1,street2,city,state,zip' => new Deliverable(),
]);
}
protected function create(Request $request)
{
return User::create([
'name' => $data['name'],
'email' => $customer['email'],
'password' => Hash::make($data['password']),
// Get the some state from the Deliverable I made earlier.
]);
}
Obviously I can't save the deliverable in the controller because each request will have a different address.
laravel laravel-5
I'm trying to write a Rule in Laravel for verifying whether an address is deliverable.
Now, the API I use stores the result of an address check, and returns an address object as well as the ID. If the form passes validation, I'd like to store the address ID without verifying it again.
If I were to do the address check within a rule, how would I store that object from the validator function for access with the create function?
Additionally, how do I pass multiple fields to the same rule? I need this rule to validate all the fields of the address at the same time, not just one.
protected function validator(array $data)
{
return Validator::make($data, [
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:6', 'confirmed'],
// For example
'street1,street2,city,state,zip' => new Deliverable(),
]);
}
protected function create(Request $request)
{
return User::create([
'name' => $data['name'],
'email' => $customer['email'],
'password' => Hash::make($data['password']),
// Get the some state from the Deliverable I made earlier.
]);
}
Obviously I can't save the deliverable in the controller because each request will have a different address.
laravel laravel-5
laravel laravel-5
edited Nov 10 at 4:49
asked Nov 10 at 4:32
Thor Correia
1077
1077
add a comment |
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53236015%2fstoring-state-in-laravel-rule-and-apply-rule-to-multiple-fields%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown