如何在 laravel eloquent 中保存布尔值

2024-05-25

我在 Laravel 中进行了以下迁移:

<?php

use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class QualityCheckTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('quality_check', function (Blueprint $table) {
            $table->increments('id');
            $table->boolean('favicon');
            $table->boolean('title');
            $table->boolean('image-optimization');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::drop('quality_check');
    }
}

我有以下控制器方法,在提交前端中的表单时运行:

public function store(CreateArticleRequest $request) {
        // $input = Request::all();
        Article::create($request->all());
        return redirect('articles');
    }

我的表格看起来像,所以:

{!! Form::open([ 'action' => 'QualityCheckController@validateSave' , 'class'=>'quality-check-form' , 'method' => 'POST' ]) !!}

        <div class="input-wrpr">
            {!! Form::label('favicon', 'Favicon') !!}
            {!! Form::checkbox('favicon', 'value' ); !!}
        </div>

        <div class="input-wrpr">
            {!! Form::label('title', 'Page Title') !!}
            {!! Form::checkbox('title', 'value'); !!}
        </div>

        <div class="input-wrpr">
            {!! Form::label('image-optimization', 'Image Optimization') !!}
            {!! Form::checkbox('image-optimization', 'value'); !!}
        </div>

        {!!  Form::submit('Click Me!') !!}

    {!! Form::close() !!}

因此,当该方法运行时,复选框的值将保存到数据库中。

截至目前,所有条目均显示为0,像这样:

现在如何做到当复选框被选中时,1已保存,当复选框未选中时,值保留在0 ??


当勾选复选框时,其值将出现在发布的数据中。当它被解开时,它的价值就不存在了。这意味着当你这样做时$request->all()它将仅包含已勾选的复选框。因此,就您而言,如果您未勾选所有 3 个复选框,您的$request->all()可能会产生一个空数组(假设没有发布其他字段)。

当你跑步时Article::create($request->all());如果没有勾选任何复选框,您实际上会向其传递一组空数据,这意味着您的数据库将填充您未提供的字段的默认值。

由于您没有在迁移中提供默认值,MySQL 将根据字段类型猜测默认值应该是什么,在布尔值的情况下将是0。不过,您可能会看到一些警告/错误。

有很多方法可以让它发挥作用,以便1当勾选复选框或0当它没有被勾选时。在您的场景中最简单的方法是将每个复选框的值设置为1并在迁移中明确设置默认值,即

移民:

$table->boolean('favicon')->default(0);

Form:

{!! Form::checkbox('title', '1'); !!}

这样,当标题复选框被勾选时,您的$request->all()返回一个包含项目的数组'title' => '1'这将保存在您的数据库中。根据您的迁移,所有未勾选的框均默认为 0。

然而,当我编写处理商店的方法时,我更喜欢更加明确。

$article = new Article();
$article->title = $request->has('title'); // Will set $article->title to true/false based on whether title exists in your input
// ...
$article->save();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 laravel eloquent 中保存布尔值 的相关文章

  • 使用 php-ews(Exchange Web 服务)在特定日期后获取电子邮件

    在我的 PHP 脚本中 我需要弄清楚如何检索指定消息 ID 之后或特定日期之后的所有电子邮件 两者都可以 我只需要检索自上次抓取收件箱以来的新电子邮件 这个收件箱每天收到数千封电子邮件 而且我在 30 天内无法删除任何电子邮件 对于初始导入
  • CodeIgniter 自定义库未加载

    我是 CodeIgniter 的新手 并尝试用它开发一个相当简单的应用程序 只是一个用于处理想要娱乐中心通行证的员工的注册的表单 我正在尝试将事物分开以使它们更清晰 这是代码 应用程序 控制器 reccenter php class Rec
  • PHP 通过 SSL 连接到 MS SQL

    我想要实现的目标非常简单 我想通过安全连接从 PHP 脚本连接到外部 MS SQL 数据库 然而 这已被证明是有问题的 到目前为止 经过三个小时的研究 我不知所措 客户端的平台是Ubuntu 这意味着我无法使用SQLSRV 安全连接已经在不
  • 是否可以将路由参数传递给 Laravel 中的控制器构造函数?

    是否可以将路由参数 或路由段 注入到控制器构造函数中 您找到一些代码来澄清我的问题 class TestController protected param public function construct paramFromRoute
  • 如何使用 PHP 构建正确的 SOAP 请求

    我需要格式化 构建此 SOAP 服务 的请求 http api notificationmessaging com NMSOAP NotificationService wsdl http api notificationmessaging
  • 如何从网站网址中隐藏 .html 扩展名

    我知道这个问题以前曾被问过 但有人知道隐藏 html 扩展名的好方法吗 我已经尝试了许多代码和许多答案https stackoverflow com https stackoverflow com 但我没有看到结果 那是我再问你一次 我有一
  • 如何在 PHP 的 HTML 页面中显示错误消息?

    我有以下登录表单 login php 其中要求输入用户名和密码
  • 在哪里可以学习网络编程从入门到精通? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我尝试做教程 但它是无组织且无结构的 我在哪里可以学习 PHP 从初学者到大师 我正在寻找类似的网站w
  • PHP 中标头的使用

    非常简单的问题 这两个 PHP 版本 5 标头调用中哪一个是 最好的 header Not Modified true 304 header HTTP 1 1 304 Not Modified 我很确定第一个是最多价的 但只是好奇如果在 H
  • Facebook API sdk 4.0 - 将照片发布到 Facebook

    我正在尝试创建一个应用程序 用户可以在其中浏览照片并将其从计算机提交到 Facebook 为此 他们首先必须将照片上传到服务器 然后使用 Facebook 请求将此图像发布到 Facebook 我正在使用多部分 表单数据 这就是我到目前为止
  • 通过互联网IP地址从一台计算机访问xampp到另一台计算机

    我试图从另一台计算机访问我的 xampp 它显示为禁止错误 然后我在 google 上搜索答案 因为他们告诉在 apache 文件夹中的 httpd conf 文件中更改一些设置 如下所示 Order Deny Allow Deny fro
  • 使用 PHP 从 Mongo 解码 JSON

    我已经看过这个线程 PHP 解码嵌套 JSON https stackoverflow com questions 3555335 php decode nested json并没有设法用它来解决我的问题 我目前正在从 Mongo 获取 J
  • 如何处理 REST api 中的 php 通知、警告和错误?

    在 REST API 中 200 响应表明操作成功 PHP 默认情况下直接在响应正文中输出错误消息 而不更改响应代码 在 SPA 中 用户无法直接看到响应文本 因此 当应用程序未按预期工作时 我通过 FireBug 检查响应正文 以检查可能
  • php - 解析html页面

    div divbox div p para1 p p para2 p p para3 p table class table tr td td tr table p para4 p p para5 p 有人可以告诉我如何解析这个 html
  • 字符串相似度的算法(比Levenshtein和similar_text更好)? php, Js

    在哪里可以找到比 levenshtein 和 phpimilar text 方法更准确地评估错误字符的拼写的算法 Example similar text jonas xxjon similar echo similar returns 6
  • Jquery一键提交多个同名表单

    我有动态创建的循环表单 我需要一键提交所有表单 我正在遵循下面的代码 你能建议我怎么做吗 谢谢
  • PHP 拒绝从 var_dump、print 等输出数据

    我目前正在运行 WAMP 服务器 并且在过去的 30 分钟内一直在尝试弄清楚我的项目如何以及为什么不会输出任何指定的 PHP 数据 起初我以为是因为我有一个 htaccess文件的output buffering被禁用 所以我删除了它 仍然
  • 在本地 SDK 服务器上工作时,实时 Google App Engine 上出现 404

    我已经在GAE标准环境上部署了几个PHP应用程序 一切正常 现在我正在部署一个新应用程序 该应用程序位于由gcloudSDK按预期工作 终端命令 dev appserver py log level warning app yaml 问题是
  • 矩形超出边界是什么意思

    PPB Graphics2D PaintImageData 矩形超出界限是什么意思 我几乎在我检查的每一段代码中都看到了它 最新的代码是 define my consumer key define my consumer secret oa
  • 如何在 PHP 5.6 中通过 php.ini 设置“verify_peer_name=false”SSL 上下文选项

    案例 我想打开 SSL 连接localhost而 SSL 证书是 FQDN 的问题 问题 没有进行特殊处理就行 下面的程序失败并显示以下消息 PHP Warning stream socket enable crypto Peer cert

随机推荐

  • 如何使用 Google Apps 脚本将文件夹从我的云端硬盘复制到团队云端硬盘?

    我发现以下 Google Apps 脚本允许我将文件夹从 MyDrive 复制到 MyDrive 以及将 SharedFolders 复制到 MyDrive function start var sourceFolder source va
  • scikit-learn 中 ColumnTransformer 的自定义 Transformer 出现问题

    我想在 scikit learn 中创建一个稳定的管道来预处理数据 我试图完成的第一步是估算None对数据框中不同列应用不同策略的值 即用平均值 中位数或其他描述性统计数据替换 但是 我 我开始使用SimpleImputer变压器连同Col
  • 如何隐藏工作表?

    如何使用 googleScript 隐藏电子表格应用程序中的一些工作表 我有一个包含多个工作表的电子表格 我想使用 googlScript 将电子表格缩小为仅第一个可见工作表和所有其他隐藏工作表 sheet hideSheet https
  • ASP.NET Core 1.0 Web API 中的简单 JWT 身份验证

    我正在寻找最简单的方法来设置使用 JWT 在 ASP NET Core 又名 ASP NET 5 中进行身份验证的 Web API 服务器 这个项目 博客文章 http www codeproject com Articles 369657
  • 将一些提交移至功能分支,但将其他提交保留在主分支中

    我不确定我是否能对此做些什么 而且保持原样也不是一个巨大的困难 我确实尝试按照其他 SO 主题等的步骤来修复问题 但最终丢失了所有帮助修订提交和文件 事情有点混乱 我会尽力解释 历史在某种程度上是可以的 从resource h中删除未使用的
  • 需要更快的数组复制

    经过一些阅读后 我发现在 java 中复制数组的方式存在一些差异 对于我的应用程序 我有一个递归节点树 每个节点都包含一个 2d 板数组 8x8 通过探查器测试 我能想到的最好的办法是 java util Arrays copyOf arr
  • 无法在 Azure Synapse Analytics 中创建表

    我是 Azure Synapse Analytics 的新手 我已经在工作区中创建了数据库 但是当我尝试创建新表时 它显示以下错误 执行查询失败 错误 不支持 CREATE TABLE 附上错误截图和查询 Answer recommende
  • 具有继承的静态块的行为

    我正在尝试使用这样的静态块 我有一个基类叫做Base java public class Base static public int myVar 和一个派生类Derived java public class Derived extend
  • LSTM 和 CNN:ValueError:检查目标时出错:预期 time_distributed_1 有 3 个维度,但得到形状为 (400, 256) 的数组

    我要申请CNN and LSTM在我的数据上 我只选择一小部分数据 我的训练数据大小是 400 50 我的测试数据是 200 50 仅使用 CNN 模型 它可以正常工作 没有任何错误 只是在添加 LSTM 模型时出现了很多错误 model
  • 调用了 BroadcastReceiver 但未调用 PhoneStateListener

    在调试下面的代码时 BroadcastReceiverCustom 正在被 已调用 但 PhoneStateListenerCustom 未调用 现在我只在 BroadcastReceiverCustom 中执行所需的操作 但可能不是最好的
  • 如何使用 Sequelize 对 3 个表进行分组?

    我的模型是 module exports function sequelize DataTypes var CommitFileStatistic return CommitFileStatistic sequelize define Co
  • AVExportSession 在后台运行

    我正在开发一款需要合并多个视频的应用程序 我在用AVExportSession导出合并的视频 我还显示导出视频的进度条 大多数时候它都运行正确 当我们锁定屏幕或将应用程序置于后台模式时 就会出现此问题 这次 如果导出正在进行中 则将应用程序
  • 堆内存问题

    有一个 WCF 自托管服务必须在 99 的时间内正常工作 有时我们会遇到这样的记忆问题 但问题发生后 服务一切正常 我们该如何处理这个问题 任何关于提供能够在不同情况下生存的强大服务的提示和要点都非常受欢迎 我不太确定问题出在哪里 但内存泄
  • 如何在Ubuntu 22.04上安装python3.6

    我需要安装这个特定的python版本 以准备开发人员环境 因为我正在维护一个包含多个基于python 3 6 9的库的系统 我最近在笔记本电脑上安装了 Ubuntu 22 04 但尝试安装这个 python 版本没有成功 我尝试安装添加 d
  • 在 Ruby Net::HTTP.start 中为服务调用设置 read_timeout

    我想在我的 ruby 代码中覆盖服务调用的默认超时 我打开连接如下 res Net HTTP start task url host task url port do http http get tasks task id end 我尝试将
  • 使用 Opera 在 JavaScript 中更新图像源

    我定期使用 Image 对象加载远程图像 以便稍后在画布上绘制 Image 对象仅在 JS 中创建 它不存在于 DOM 中 该代码在 Chrome 和 Firefox 上运行良好 在 Opera 中 问题在于 每当修改图像源时 浏览器似乎总
  • 使用 Spring Security 进行会话管理:并发会话

    我使用 Spring Security 开发了一个 Web 应用程序 对于登录 它从 LDAP 获取访问权限 现在我想使用 spring security 本身来管理会话 我可以使用authentication getName 我正在得到u
  • F# 中的动态编程

    实现解决问题的动态规划算法的最优雅的方法是什么子问题重叠的问题 http en wikipedia org wiki Overlapping subproblem 在命令式编程中 人们通常会创建一个按问题大小索引的数组 至少在一维 然后算法
  • 在 macOS 中获取用户首选的温度设置

    我正在尝试读取温度单位 摄氏度 华氏度 的用户设置系统首选项 我试图使用 NSLocale 获取此数据 但我找不到任何温度设置的证据 甚至可以读取这些数据吗 Thanks 官方 API 记录在首选项 实用程序 https developer
  • 如何在 laravel eloquent 中保存布尔值

    我在 Laravel 中进行了以下迁移