In my system what i want to include is that user can put three addresses.And that three addresses should be unique to that user only not other user.
I have used ajax validation for the system.But i couldnot figure out logic.
Everytime i try i got email address has already taken even to different user.So could anyone can help me how to make unique address for particular user only.
Following is my code and what i have tried:
public function AddNewAddress(Request $request) { if(!request()->ajax()){ return false; } $customerId = Auth::user()->userCustomer; // $user = Auth::user();
$customer = $user->userCustomer()->firstOrFail();
$userAddresses = $customer->customerAddresses()->latest()->get();
$validator = Validator::make($request->all(), [
'house_building'=>'required',
'country_name'=>'required',
'city_name'=>'required',
'district_name'=>'required',
'address_name'=>'required|unique:user_customer_addresses,address_name,'.$userAddresses->get('customer_id'),
'street'=>'required',
'house_floor_number'=>'required',
'extra_direction'=>'required'
]);
if ($validator->fails()) {
return response()->json(array(
'status' => 'fails',
'errors' => $validator->getMessageBag()->toArray()
));
}
if ($validator->passes()) {
// $count = count($userAddresses);
if ($count >= 3) {
session()->flash('Address_message', 'Limit upto 3.Please delete one of your address for updating new address');
return response()->json(array(
'status' => 'success',
'url' => url('user/AddressUpdate')
));
} else {
UserCustomerAddress::create([
'customer_id' => $customerId->id,
'city_name' => $request->city_name,
'district_name' => $request->district_name,
'house_building' => $request->house_building,
'address_name' => $request->address_name,
'street' => $request->street,
'house_building' => $request->house_building,
'house_floor_number' => $request->house_floor_number,
'extra_direction' => $request->extra_direction,
'floor' => $request->floor,
'building' => $request->building
]);
session()->flash('Address_message', 'Your AddressInformation has been created');
return response()->json(array(
'status' => 'success',
'url' => url('user/AddressUpdate')
));
}
}
}
from Newest questions tagged laravel-5 - Stack Overflow http://ift.tt/1UeM14L
via IFTTT
Aucun commentaire:
Enregistrer un commentaire