Я использую Laravel 5.7 с jenssegers laravel-mongodb .Вот моя пользовательская модель в app/User.php
:
use \Jenssegers\Mongodb\Eloquent\Model as Moloquent;
class User extends Moloquent {
public $username, $password, $firstName, $lastName, $emails, $mobiles, $remember_token;
protected $fillable = [
'username', 'password', 'firstName', 'lastName', 'emails', 'mobiles',
];
protected $hidden = [
'password', 'remember_token',
];
protected $guarded = ['_id'];
}
, когда я создаю новый объект БД, используя следующий код, все работает хорошо:
User::create(['username' => 'ehsankh', 'password' => Hash::make('secret'), 'firstName' => 'Ehsan', 'lastName' => 'Kh', 'emails' => array('a@b.c')]);
, но учтите следующее:
$user = new User;
$user->username = 'ehsankh';
$user->password = Hash::make('secret');
$user->firstName = 'Ehsan';
$user->lastName = 'Kh';
$user->emails = ['a@b.com'];
$user->save();//using $user->create() also has the same result
этот код создает только документ с 3 свойствами (_id, updated_at, creation_at) в коллекции пользователей.Я понятия не имею, что может вызвать эту проблему.Любой обходной путь будет оценен.