当前位置: 首页 > 知识库问答 >
问题:

拉威尔截断数据

杭曦
2023-03-14

我对Laravel截断的数据有一个小问题。我将传递给我的后端值,该值可以是表中定义的“百分比”或“金额”,但在表中也可以为null,但每次尝试将其设置为null时,都会出现如下错误:

{"discount_currency":["您输入的值无效。"]}

或者当我从处理请求中删除enum时,它会说

[ { "title": "Something went wrong!", "message": "SQLSTATE[01000]: Warning: 1265 Data truncated for column 'discount_currency' at row 1 (SQL: update `products` set `discount_amount` = 0, `discount_currency` = null, `products`.`updated_at` = 2021-12-14 13:50:28 where `id` = 3)" } ]

所以我传递数据抛出API从我的Vue,这个婴儿车的请求看起来像:

discount_currency' => [
                'string',
                'nullable',
                new EnumValue(EnumProductDiscountCurrencies::class, false) ?? null
            ]

所以如果我删除new ENumValue...我有第二个错误。枚举的定义很简单:

public const percent = 'percent';
public const euro = 'euro';

我做错了什么?这个表可以为空,我可以直接从数据库中更改它,为什么我不能在这里处理它?顺便说一句,数据库中定义了默认值。这就是迁移

Schema::table('products', function (Blueprint $table) {
            $table->enum('discount_currency', ['percent', 'euro'])->default('percent');
        });

共有1个答案

吴兴国
2023-03-14

迁移不允许discount_currency列为空。您需要添加:

->nullable();

以允许空值。

 类似资料:
  • 我目前正在研究构建SaaS构建管理工具。我想知道的是,如果我使用laravel passport作为api令牌,我如何为用户分配角色,例如: SuperAdmin:可以创建项目|可以创建新用户并为用户分配角色。 管理员:可以查看项目。 因为我希望能够根据用户权限隐藏前端上的元素。 例如,如果我使用传统的laravel应用程序,我可以使用委托和刀片指令@role('admin')来显示基于用户权限类

  • 我对拉威尔望远镜的部分有点困惑。 我有一个用户模型和表。 如何为用户分配用户、客户和/或管理员的角色。 我有一个带有vue和laravel api后端的水疗中心。我用https://laravel.com/docs/5.3/passport#consuming-使用javascript创建api 我如何分配哪个用户模型具有哪些作用域? 还是范围与角色不同? 您将如何实现这一点? 提前谢谢!

  • 我正在构建一个Laravel web应用程序,其中我需要一个动态图像库,我构建了一个后端管理面板,可以在其中添加图像,我成功地将图像添加并保存到数据库中,但我无法编辑或删除它们。 错误是: UrlGenerationException中的ErrorException。php第17行:缺少[Route:galleries.update][URI:backend/galleries/{gallery}

  • 我试图设置一个属性,使用@产量和@部分,但如何?我试图用 和 但是它返回id= 我知道我可以用默认的id来管理它,但我不喜欢这种方式,如果我需要使用自定义属性呢?

  • 我正在使用这个库:https://github.com/davibennun/laravel-push-notification 用于发送推送通知。我使用了示例代码,我的iPhone上的推送消息正在工作。 现在我只想向多个设备发送一条消息。文件上说我需要使用: 但是我想从devicecollection上的数据库中得到一个foreach循环。我该怎么和拉威尔一起做?非常感谢!

  • 有办法覆盖Laravel中的GenericUser类吗? 当前身份验证使用GenericUser作为Auth::Operations的返回对象, 我希望它是我的用户类从我的模型。这是否可行呢?