Ich habe ein Adressfeld in meiner Form setzen, unter Verwendung der Adresse mich, dass lat & long
dafür holen gegeben und in DB speichern ..Wie benutzerdefinierte Validierungsregeln und Fehlermeldung in Laravel 5
Wenn die Benutzer geben die falsche Adresse der lat & long
null ..
Also hier würde ich brauche eine neue Prüfregeln für das Feld hinzufügen ..
hier ist mein Code,
ich habe versucht, so etwas wie dieses .. Aber ich weiß nicht, wie ich das machen soll.
public function getLatlan($address = '')
{
$formattedAddr = str_replace(' ','+',$address);
$geocodeFromAddr = file_get_contents('http://maps.googleapis.com/maps/api/geocode/json?address='.$formattedAddr.'&sensor=false');
$output = json_decode($geocodeFromAddr);
$data['latitude'] = $output->results[0]->geometry->location->lat;
$data['longitude'] = $output->results[0]->geometry->location->lng;
return $data;
}
function postSave(Request $request)
{
$rules = $this->validateForm();
$address_validate = array('location' =>'enter valid address');
if($_REQUEST['location'] != ''){
$data = $this->getLatlan($_REQUEST['location']);
}
if($data['latitude'] == '' || $data['longitude'] == ''){
array_merge($rules,$address_validate);
}
$validator = Validator::make($request->all(), $rules);
if ($validator->passes()) {
..
}
}
Wie sollte ich das tun ... Könnte mir jemand helfen ..
Danke,
Haben Sie das gelesen https://laravel.com/docs/5.2/validation#custom-validation-rules – TheFallen
Ja ich habe it..But weiß nicht, wie diese .. –
in meinem Fall zu implementieren Warum nicht? Sie müssen nur Ihre Lat- und Long-Validierung in eine benutzerdefinierte Regel extrahieren. Ich denke, die Dokumentation ist sehr gut und verständlich. – TheFallen