【问题标题】:Error when trying to override create method in lumen尝试覆盖流明中的创建方法时出错
【发布时间】:2017-09-17 04:52:41
【问题描述】:

我试图覆盖 lumen 中的 create 方法,我在 laravel 中使用了完全相同的代码,并且工作起来像一个魅力,但是当我在 lumen 中尝试它时,我得到了内存大小错误,这是我的代码:

web.php:

$app->get('/test', function () {
    User::create(['name'=>'a','email'=>'sd.sd@ds.com']);
});

用户.php:

public static function create(array $attributes = [])
{
    parent::create($attributes);
}

您在这里看不到什么特别之处,这是完整的错误:

致命错误:第 176 行 \vendor\illuminate\database\Eloquent\Concerns\GuardsAttributes.php 中允许的内存大小为 1073741824 字节已用尽(尝试分配 262144 字节)

顺便说一句,我尝试增加允许的内存大小,并注释和取消注释可填充数组,但没有任何效果....

【问题讨论】:

  • 试试**return** parent::create($attributes); - 虽然我不知道流明和laravel
  • @Xatenev 很遗憾没有工作
  • 我觉得你没有分享代码的重要部分
  • 这是我安装框架后写的所有内容

标签: php laravel eloquent lumen


【解决方案1】:

我想你可以试试这个:

在您可能需要重新启动服务器后,您可以从 (/etc/php5/apache2/php.ini) 增加 memory_limit

memory_limit = 512M

ini_set('memory_limit', '512M');

希望这对你有用!

【讨论】:

  • 嗯...我对 Laravel 一无所知,但是,您认为 1GB 的 RAM 是否不足以创建看似简单的具有几个属性的实体?
  • 我试过了,但还不够,好像有内存泄漏,我不知道
【解决方案2】:

这可能是由于流明拒绝质量分配而导致的问题。您可以尝试在 User.php 中添加受保护的字段

protected $guarded = [];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多