【问题标题】:Eloquent Bulk insert in MySQL using firstOrCreate function?使用 firstOrCreate 函数在 MySQL 中进行 Eloquent Bulk 插入?
【发布时间】:2017-05-17 21:46:14
【问题描述】:

如何在 Laravel 上使用 firstOrCreate 函数在 MySQL 中批量插入?我正在通过 RESTfull API 发送数据

我的模特:

{
    "hashtags": [{
            "text": "hashtag1"
        }, {
            "text": "hashtag2"
        }, {
            "text": "hashtag3"
        }, {
            "text": "hashtag4"
        }, {
            "text": "hashtag5"
        }
    ]
}

当我将此模型传递给 firstOrCreate 函数时,

$hashtag_data = $request->get('hashtags');
$hashtags = Hashtag::firstOrCreate($hashtag_data);

返回错误。

但是当我通过特定记录时

$hashtag_data = $request->get('hashtags');
$hashtags = Hashtag::firstOrCreate($hashtag_data[1]);

插入成功

【问题讨论】:

    标签: php mysql laravel-5 eloquent bulkinsert


    【解决方案1】:

    下面应该可以工作,但不能在机器上进行测试。

       $hashtag_data = $request->get('hashtags');
       $hashtags = Hashtag::insert($hashtag_data);
    

    【讨论】:

    • 是的,我已经测试过这样的东西。它有效,但我的要求是我需要所有插入的 ID 作为回报。而且我只需要添加那些不在数据库中的主题标签。
    • @NahyanBinKhalid 有同样的决赛,到目前为止你有什么解决方案吗?我正在处理超过 10k 条记录,但似乎找不到合适的解决方案。
    猜你喜欢
    • 2012-09-24
    • 2014-11-30
    • 1970-01-01
    • 1970-01-01
    • 2018-09-26
    • 2018-01-14
    • 2013-01-06
    • 1970-01-01
    • 2020-07-30
    相关资源
    最近更新 更多