Почему при сохранении данных в Laravel возникает ошибка неожиданного перенаправления (302)? - PullRequest
0 голосов
/ 09 февраля 2020

В моем приложении я получаю ошибку 302 при попытке сохранить данные. Я публикую здесь свои коды, пожалуйста, кто-нибудь заглянет в это и поможет мне.

HolidayAdd. vue

    <template>
    <layout>
        <div class="container">
            <form @submit.prevent="handleSubmit">
                <div class="form-group">
                    <label for="fname">First Name</label>
                    <input id="fname" type="text" class="form-control" name="ftname" placeholder="Enter your First Name" v-model="holiday.fname">
                </div>
                <div class="form-group">
                    <label for="lname">Last Name</label>
                    <input id="lname" type="text" class="form-control" name="lastname" placeholder="Enter your Last Name" v-model="holiday.lname">
                </div>
                <div class="form-group">
                    <label for="sdate">Start Date</label>
                    <input type="date" class="form-control" name="sdate" v-model="holiday.sdate" id="sdate">
                </div>
                <div class="form-group">
                    <label for="edate">End Date</label>
                    <input type="date" class="form-control" name="edate" v-model="holiday.edate" id="edate">
                </div>
                <button class="btn btn-info">Apply</button>
            </form>
        </div>
    </layout>
</template>

<script>
import Layout from './../../Shared/Layout'
export default {
    components: {
        Layout
    },
    data() {
        return {
            holiday: {
                fname: '',
                lname: '',
                sdate: '',
                edate: ''
            }
        }
    },
    methods: {
        async handleSubmit() {
            let response = await this.$inertia.post('/holiday', this.holiday)
        }
    }
}
</script>

HolidayController. php

public function store(Request $request)
    {

        $holiday = $request->validate([
            'firstname' => 'required',
            'lastname' => 'required',
            'startdate' => 'required',
            'enddate' => 'required'
        ]);

        Holiday::create($holiday);

        return redirect()->route('holiday.index');
    }

web . php

 Route::group(['middleware' => 'auth'], function() {
    Route::resource('holiday', 'HolidayController');
 });

Насколько я знаю, ошибки нет, тогда почему я получаю ошибку 302 здесь?

1 Ответ

1 голос
/ 09 февраля 2020

Это происходит из-за проверки в вашем магазине действий. вам нужно изменить

holiday: {
            fname: '',
            lname: '',
            sdate: '',
            edate: ''
        }

на

holiday: {
            'firstname' : '',
            'lastname' : '',
            'startdate' : '',
            'enddate' : ''
        }

, а затем изменить v-модель на новые имена. тогда вам нужно выполнить некоторую проверку в вашем front-end. Также вы не должны возвращать ответ перенаправления, если запрос ajax.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...