Laravel Select输入未在请求中显示

时间:2019-09-30 07:48:56

标签: laravel forms materialize laravel-5.8

我有一个表单提交给控制器,但控制器未根据我的请求读取我的选择输入

下面是我尝试过的代码。我也尝试添加另一个输入,但是选择仍然没有显示,我添加了一个禁用的,选择的属性,但是仍然没有显示。

<form action="{{route('mycontroller.update',$model)}}" method="POST">
    @method('PATCH')
    @csrf
    <input type="text" name="category" id="category">
    <select name="level" id="level">
        <option value="1">One</option>
        <option value="2">Two</option>
        <option value="3">Three</option>
    </select>
    <button type="submit">Submit</button>
</form>

这是我的控制器

public function update(Model $model)
{
    dd(request()->all());
}

我的模型班

 protected $guarded = [];

这是我的输出

array:3 [▼
  "category" => "sdasdad"
  "_method" => "PATCH"
  "_token" => "some random characters"
]

这是我的路线

Route::resource('mycontroller', 'MyController');

3 个答案:

答案 0 :(得分:0)

在控制器中

public function update(Model $model,Request $request)
{
   dd(request()->all());
}

您没有捕获请求的数据,因此只需尝试一下即可。...

答案 1 :(得分:0)

尝试一下
在代码顶部使用此

use Illuminate\Http\Request;

在您的控制器通过请求类型提示中

public function update(Model $model,Request $request)
{
   dd(request()->all());
}

答案 2 :(得分:0)

我尝试解决我的问题,对不起,我没有提到我正在使用materializecss,但我对其进行了标记。

我替换了我的默认选择框来自

 <select name="level" id="level">
    <option value="1">One</option>
    <option value="2">Two</option>
    <option value="3">Three</option>
</select>

  <div class="">
    <label>Select priority level</label>
    <select class="browser-default" name="level" id="level">
       <option value="1" selected>One</option>
       <option value="2">Two</option>
       <option value="3">Three</option>
   </select>
  </div>

现在显示

的输出
    array:4 [▼
  "category" => "Testing"
  "level" => "2"
  "_method" => "PATCH"
  "_token" => "random token here"
]