Dusk не обрабатывает POST-запросы так же, как Laravel при тестировании отправки формы

см.: http://www.henryalgus.com/reading-binary-files-using-jquery-ajax/ он вернет blob в качестве ответа, который затем может быть помещен в filesaver

0
задан Jared Clemence 17 January 2019 в 00:42
поделиться

2 ответа

Краткий ответ: Проверьте страницу, чтобы убедиться, что селектор захватывает правильную форму. В этом случае тестер забыл, что в строке меню существует форма. Тест нажимал кнопку в строке меню вместо основного содержимого страницы.

Оригинальный текст: Я думаю, иногда вам просто нужно уйти и вернуться к проблеме. Я был так сосредоточен на форме в центре страницы, что пропустил форму в строке меню, в которой есть ввод с именем «запрос».

Я нажимал не ту кнопку с моими командами Dusk, потому что мой селектор применялся к нескольким кнопкам в разных формах.

0
ответ дан Jared Clemence 17 January 2019 в 00:42
поделиться

Извините за поздний ответ.

Например, мы можем принять как Post Модель с PostController

. Ваша функция хранения может выглядеть как

public function store(Request $request)
    {
        Post::create($request->all());
        return redirect()->route('post.index')->with('success','PostCreated Successfully');

}

, если вы добавите dd функция в начале функции она будет работать, т. Е.) dd($request->all());

, НО ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ ПОЛЬЗОВАТЕЛЬСКИЕ ЗАПРОСЫ

ДЛЯ EG PostStoreRequest

<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;


class PostStoreRequest extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            'post_name' => 'required',


        ];
    }

    /**
     * Custom message for validation
     *
     * @return array
     */
    public function messages()
    {
        return [
            'post_name.required' => 'Enter Post Name',
        ];
    }

}

и PostController@store

public function store(PostStoreRequest $request)
        {
            Post::create($request->all());
            return redirect()->route('post.index')->with('success','PostCreated Successfully');

    }

Даже если вы добавите dd вверху функции, потому что она сначала проверила запрос и войдет в функцию

, надеюсь, это поможет [ 1117]

0
ответ дан Manojkiran.A 17 January 2019 в 00:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: