【问题标题】:Laravel HTML <select>Laravel HTML <选择>
【发布时间】:2019-02-08 05:32:24
【问题描述】:

我只想完成一个简单的任务。

我的 .blade.php 文件有一个带有值的角色选择框:

<p>Role:</p>
<div class="form-group">
    <select name="role_id" id="role_id">
        <option value="1">Admin</option>
        <option value="2" selected="selected">User</option>
    </select>
</div>

而且我的请求处理程序很简单:

 $user = User::create([
     'name' => $request['name'],
     'surname' => $request['surname'],
     'email' => $request['email'],
     'password' => Hash::make($request['password']),
     'role_id' => $request['role_id'],
 ]);

role_id 是整数列

但我收到错误:Field 'role_id' doesn't have a default value.

好像我什至没有传递价值?我错过了什么吗?

我尝试了什么:我尝试用谷歌搜索它,但似乎每个人都在使用一些 Laravel 选择框,这对我来说太难了。我想用 HTML 保持简单。

【问题讨论】:

  • 您好,在User::create 之前,您可以尝试输入代码dd($request); 来检查role_id 是否存在。
  • 如果你dd($request-&gt;all());你看到了什么?如果role_id 没有设置,那么它可能不会发送到后端。您能向我们展示您的整个 HTML 表单吗?
  • 你有没有把role_id放到模型protected $fillable = ['role_id'];
  • array:9 [▼ "_token" => "bDuTwOZBmw3bNhFvme4Yk9n5KY8jau7H2H79QTXR" "name" => "Ad" "surname" => "fds" "role_id" => "1" "email" => "chazecka@gmail.com" "password" => "123456" "password_confirmation" => "123456" "workplace" => "52-100" "note" => "fsa" ]
  • 当您使用批量分配时..确保您要存储/更新的值必须是可填充的.. =)

标签: laravel laravel-5 laravel-blade


【解决方案1】:

每次添加字段时,请务必将其添加到可填充字段中

在模型中

protected $fillable = ['role_id'];

【讨论】:

    猜你喜欢
    • 2015-12-21
    • 1970-01-01
    • 2021-12-28
    • 2021-07-16
    • 1970-01-01
    • 2013-03-08
    • 2015-08-27
    • 1970-01-01
    • 2020-06-30
    相关资源
    最近更新 更多