Данные не сохраняются в базе данных в laravel 5.5 - PullRequest
0 голосов
/ 13 мая 2018

Когда я заполняю и отправляю форму, данные не сохраняются в моей базе данных Mysql.

Знаете ли вы, что я сделал неправильно?

Мой контроллер адресов выглядит следующим образом:

App/Address
......




public function store(Request $request)
            {
                $this->validate($request,[
                    'addressline'=>'required',
                    'city'=>'required',
                    'state'=>'required',
                    'zip'=>'required|integer',
                    'contry'=>'required',
                    'phone'=>'required|integer',

                ]);

                Auth::user()->address()->create($request->all());
                Address::create($request->all());
                return redirect()->back();

            }

Маршрут:

 Route::post('shipping-info','CheckoutController@store')->name('checkout.shipping');

Модель адреса:

class Address extends Model
{
    protected $fillable=['addressline','city','state','zip','phone','country'];
}

Вид Blade:

 @extends('layouts.main')

@section('content')
    <br>
<div class="row">
    <div class="small-6 small-centered columns">
        <h3>Shipping Info</h3>

              {!! Form::open(['route' => 'checkout.shipping', 'method' => 'POST', 'files' => true, 'data-parsley-validate'=>'']) !!}


..........

{{ Form::submit('Proceed to Payment', array('class' => 'button success')) }}
{!! Form::close() !!}

1 Ответ

0 голосов
/ 13 мая 2018

Если вы намеревались вызвать метод store для AddressController, значит ошибка в вашем маршруте. Вы должны изменить

Route::post('shipping-info','CheckoutController@store')->name('checkout.shipping');

до

Route::post('shipping-info','AddressController@store');

Кроме того, я не уверен, зачем вам это нужно

Auth::user()->address()->create($request->all());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...