updateOrCreate并未填充Laravel 5.6中的所有字段

时间:2018-05-01 08:48:31

标签: laravel laravel-5.6

我有一个代码: -

$tokenUpdated = AppToken::updateOrCreate(
                        array(
                        'user_id' => $user_id, 'token' => $token),
                        array('expiry'=>$expiryTime,
                            'created_date'=>$created_at,
                            'modified_date'=>$created_at)
                    );

虽然插入了新行,但expirycreated_date字段值未被保存。它们记录显示NULL值,这是默认值。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

首先,您需要检查expirycreated_date是否返回值,如果是,那么您可以使用updateOrCreate函数,如下所示:

$tokenUpdated = AppToken::updateOrCreate(
                 ['user_id' => $user_id, 'token' => $token]
                 ['expiry'=>$expiryTime,
                   'created_date'=>$created_at,
                   'modified_date'=>$created_at
                 ]
                );

检查laravel eloquent文档:https://laravel.com/docs/5.6/eloquent