mardi 28 avril 2020

Saving relationships data in model

This is my store function, Laravel 5.5

Here firstly I am saving address first then account, after that I can attach account id to address id.

But if there is an error saving account data address data will be created but account is not,

Account has one to one relationship with address,

Is there any way to save if there is an error on saving account data address gets deleted or it does not save at all,

Thank you.

public function store(Request $request){

    $address_save = false;
    $account_save = false;


    ///////After Validation//////

    $address = new Address;
    $address->shipping_address1 =  $request->shipping_address1;
    $address->shipping_address2 =  $request->shipping_address2;
    $address->area_id =  $request->area_id;
    $address->city_id =  $request->city_id;
    $address->shipping_state =  $request->shipping_state;
    $address->shipping_pincode =  $request->shipping_pincode;
    $address->shipping_country =  $request->shipping_country;
    $address->billing_address1 =  $request->billing_address1;
    $address->billing_address2 =  $request->billing_address2;
    $address->billing_area =  $request->billing_area;
    $address->billing_state =  $request->billing_state;
    $address->billing_city =  $request->billing_city;
    $address->billing_pincode =  $request->billing_pincode;
    $address->billing_country =  $request->billing_country;
    $address->same_as_shipping =  $shipping;

    $address_save = $address->save();

    $address_id = $address->id;


    $account = new Account;
    $account->title = $request->title;
    $account->fullname = $request->fullname;
    $account->username = $request->username;
    $account->password = $request->password;
    $account->company = $request->company;
    $account->mobile = $request->mobile;
    $account->alt_number = $request->alt_number;
    $account->email = $request->email;
    $account->whatsapp = $request->mobile;
    $account->pan = strtoupper($request->pan);
    $account->gstin = strtoupper($request->gstin);
    $account->registered_at = date("Y-m-d h:i:sa");

    $account->address_id = $address_id;
    $account_save = $account->save();

    $account_id = $account->id;


from Newest questions tagged laravel-5 - Stack Overflow https://ift.tt/2VKCtHt
via IFTTT

Aucun commentaire:

Enregistrer un commentaire