Laravel Dusk - 卷曲错误(代码 3):<url> 格式错误
Laravel Dusk - Curl error (code 3): <url> malformed
我在视图中有以下表格:
{{ Form::open(['url' => route('orders.store')]) }}
{{ Form::hidden('customer_id', $customer->id) }}
{{ Form::hidden('address_1', $customer->address_1) }}
{{ Form::hidden('address_2', $customer->address_2) }}
{{ Form::hidden('address_3', $customer->address_3) }}
{{ Form::hidden('address_4', $customer->address_4) }}
{{ Form::hidden('postcode', $customer->postcode) }}
{{ Form::submit('Create Order') }}
{{ Form::close() }}
如果我自己按下“创建订单”按钮,它就会正常工作。然而,当我尝试通过 Dusk 进行测试时,它失败并显示 "Curl error (code 3): malformed"。我的 dusk 测试代码是:
$this->browse(function (Browser $browser) {
$browser->on(new LoginPage)
->visit('/order')
->press('Create Order')
->assertSee('Order created');
});
我正在测试许多其他形式,它们都有效。唯一的区别是这一个所有的输入都是隐藏的。有没有办法输出被报告为格式错误的 url 是什么?
更新:
它似乎在存储方法中失败了 - 我在重定向之前添加了 dd($order)
并且订单存在但是然后它在重定向时失败了?
public function store(OrderStoreRequest $request)
{
$data = $request->validated();
$order = Order::create($data);
return redirect()->route('orders.show', $order)
->with('success', 'Order created');
}
所以我认为问题一定出在 show 方法中。
问题与缺少数据库列有关,它正在尝试将错误记录到 Slack。但是我没有在 dusk env 文件中定义 Slack Webhook URL。为了解决这个问题,我只是在 .env 文件中设置了以下内容:
LOG_CHANNEL=single
我在视图中有以下表格:
{{ Form::open(['url' => route('orders.store')]) }}
{{ Form::hidden('customer_id', $customer->id) }}
{{ Form::hidden('address_1', $customer->address_1) }}
{{ Form::hidden('address_2', $customer->address_2) }}
{{ Form::hidden('address_3', $customer->address_3) }}
{{ Form::hidden('address_4', $customer->address_4) }}
{{ Form::hidden('postcode', $customer->postcode) }}
{{ Form::submit('Create Order') }}
{{ Form::close() }}
如果我自己按下“创建订单”按钮,它就会正常工作。然而,当我尝试通过 Dusk 进行测试时,它失败并显示 "Curl error (code 3): malformed"。我的 dusk 测试代码是:
$this->browse(function (Browser $browser) {
$browser->on(new LoginPage)
->visit('/order')
->press('Create Order')
->assertSee('Order created');
});
我正在测试许多其他形式,它们都有效。唯一的区别是这一个所有的输入都是隐藏的。有没有办法输出被报告为格式错误的 url 是什么?
更新:
它似乎在存储方法中失败了 - 我在重定向之前添加了 dd($order)
并且订单存在但是然后它在重定向时失败了?
public function store(OrderStoreRequest $request)
{
$data = $request->validated();
$order = Order::create($data);
return redirect()->route('orders.show', $order)
->with('success', 'Order created');
}
所以我认为问题一定出在 show 方法中。
问题与缺少数据库列有关,它正在尝试将错误记录到 Slack。但是我没有在 dusk env 文件中定义 Slack Webhook URL。为了解决这个问题,我只是在 .env 文件中设置了以下内容:
LOG_CHANNEL=single