laravel - Laravel 表单不起作用:未调用控制器
问题描述
我已经被这个问题困扰了几个小时,所以希望你们中的一些人能提供帮助。提前致谢。
问题很简单:当我单击表单的提交按钮时,什么也没有发生。就像,实际上什么都没有。没有错误,什么都没有。在开始开发表单之前,我通过执行创建了 Message 模型
php artisan make:model Message --resource
因此,我的方法创建、存储等已经完成并准备就绪(感谢工匠!)。在我的路由 web.php 路由文件中,我有:
Route::resource('Message','MessageController');
这应该会自动链接所有方法,对吧?
无论如何,我的表格是:
{!! Form::open(['action' => 'MessageController@store', 'method' => 'POST']) !!}
<ul class="row">
<li class="col-sm-6">
<label>{{Form::label('name','Name')}}</label>
{{Form::text('name', '', ['class' => 'form-control'])}}
</li>
<li class="col-sm-6">
<label>{{Form::label('email','Email')}}</label>
{{Form::text('email', '', ['class' => 'form-control', 'placeholder' => 'Your email'])}}
</li>
<li class="col-sm-12">
<label>{{Form::label('message','Message')}}</label>
{{Form::textarea('message','', ['class' => 'form-control'])}}
</li>
{{Form::submit('Submit', ['class' => 'btn-round'])}}
</ul>
{!! Form::close() !!}
我的 MessageController@store 看起来像这样:
public function store(Request $request)
{
$this -> validate($request, [
'name' => 'required',
'email' => 'required',
'message' => 'required'
]
);
$message = new Message();
$message -> name= $request -> input('name');
$message -> email= $request -> input('email');
$message -> text= $request ->input('text');
$message -> user_id = Auth::user()->id;
$message->save();
return redirect('/');
}
控制器似乎不起作用,因为即使我切断了验证,也没有任何反应。我不知道我做错了什么!
解决方案
你必须使用路线。
在 HTML 中:
<form method="post" action="{{url('login')}}" accept-charset="UTF-8">
在路由/web.php 中:
Route::post('login','WelcomeController@log_in');
推荐阅读
- javascript - 我正在使用 promise.all() 来获取具有不同参数的 url,但它返回一个未定义的数组
- p5.js - 执行时如何找到内置命令所遵循的逐行指令
- unity3d - 我想让我的武器跟随光标但在一个圆圈的范围内请帮助p || unity2d
- python - 识别 pandas read_sql 中的日期类型
- flutter - 在 Flutter for iOS 和 Android 中检查设备音量?
- amazon-cloudwatchlogs - Cloudwatch 记录“AND NOT”搜索
- spring - 注册后Spring Boot自动登录不起作用
- android - 工具栏 SearchView 不可聚焦
- python - 有没有类似 Jupyter 但不能在浏览器上运行的软件
- javascript - Mongoose 查询获取选择器键