【发布时间】:2021-03-09 13:02:38
【问题描述】:
我一插入这个标题,系统就向我显示了所有类似的问题,但没有一个能帮助我。无论我尝试什么,我都会收到此错误“此路由不支持 POST 方法。”。更糟糕的是,我是否已经制作了另一个具有相同逻辑的组件,并且效果很好。
以下是路线:(teeoffform 有效,公告无效)
Route::get('/bulletin', function () {
return view('bulletin');
});
Route::get('/teeoffform', function () {
return view('teeoffform');
});
这是表单标签:两个相同的一个有效一个不工作
<form wire:submit.prevent="submit" method="POST">
这是我的一个不起作用的组件(公告) 与另一个有效的唯一区别是没有渲染方法,所以我试着把它拿出来看看是否是问题所在,但没有运气......我想,因为我的路线已经调用了查看可能存在冲突...但这没关系,无论如何我都会收到错误消息,而且我没有想法。
<?php
namespace App\Http\Livewire;
use Illuminate\Support\Facades\Auth;
use Livewire\Component;
use App\Models\Bulletins;
use App\Models\User;
class Bulletin extends Component
{
public $title;
public $message;
public $messagesending;
public $user_email;
public $userTable_email;
public $expires;
public $success_message;
protected $rules = [
'title' => 'required',
'message' => 'required',
'user_email' => 'required',
'expires' => 'required',
];
public function render()
{
return view('livewire.bulletin', ['email_data' => User::orderBy('email','asc')->get()]);
}
public function submit()
{
$this->validate();
$sendMessage = new Bulletins;
$sendMessage->title = $this->title;
$sendMessage->message = $this->messagesending;
$sendMessage->user_email = $this->user_email;
$sendMessage->expires = $this->expires;
$sendMessage->save();
$this->success_message = 'Message Sent Successfully';
}
}
我真的不明白...我找了 4 个小时现在为什么会发生这种情况。
【问题讨论】:
-
查看 devtools 的网络选项卡,看看哪个请求出错以及响应是什么。
-
HTML 的其余部分是什么样的?为什么要使用表单?
-
我遇到了同样的问题,对我来说,我必须添加wire:submit.prevent="createStuff",以防止默认行为,希望对您有所帮助
标签: laravel laravel-livewire livewires