php - 在 laravel Eloquent 创建中保存多条记录

标签 php laravel

我正在尝试通过以下方式保存多条记录

AppSettings::create(
    [
        'name' => 'mail_host',
        'type' => $emailsettingstype->id,
        'value' => '',

    ],
    [
        'name' => 'mail_port',
        'type' => $emailsettingstype->id,
        'value' => '',    
    ],
    [
        'name' => 'mail_username',
        'type' => $emailsettingstype->id,
        'value' => '',
    ],
);

但是从上面的内容来看,只有第一个数组被创建了。我哪里错了?感谢您的帮助。

最佳答案

我觉得应该这样

AppSettings::createMany([
    [
        'name'=>'mail_host',
        'type'=>$emailsettingstype->id,
        'value'=>'',

    ],
    [
        'name'=>'mail_port',
        'type'=>$emailsettingstype->id,
        'value'=>'',

    ],
    [
        'name'=>'mail_username',
        'type'=>$emailsettingstype->id,
        'value'=>'',
    ],
]);

确保您传递的是数组的数组,而不是数组的参数

更新,您可以使用 Model::insert(),尽管根据我的阅读,该方法不会创建/更新时间戳。

关于php - 在 laravel Eloquent 创建中保存多条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48472015/

相关文章:

php - 如何在PHP中进行照片管理?

php - 如何对php生成的html对象进行排序

php - PHP 提交文本中的换行符转换

php - Laravel 5.4 从数据库检查给定的数组

php - laravel Eloquent 关系 3 个模型

新用户注册时 Laravel 5.8 无法生成 api_token

php - 仅在 PHPUnit 中需要时才执行 dataProviders?

php - 从外部函数访问变量 (PHP)

php - 为不同的端点使用多个数据库

javascript - Laravel Ajax POST 请求不起作用 : 302 found