2015-06-06 23 views
29

Yeni bir kullanıcı oluşturmak veya mevcut olanı bulup güncelleştirmek için Laravel'in firstOrNew() işlevini kullanıyorum.Laravel firstOrNew İlk veya yeni olup olmadığını nasıl kontrol edersiniz?

Nesne oluşturulduktan sonra, daha önce var olsaydı veya yeni bir nesne olup olmadığını nasıl bilebilirim? Sen Modeli exists özelliğini kontrol edebilirsiniz

$user = \App\User::firstOrNew([ 
    'email' => $userData->getEmail(), 
    'name' => $userData->getName(), 
]); 

if ($user->new) { // some way to check 
    // user was created now 
} else { 
    //user already existed 
} 
+0

onay created_at damgası –

+0

yine boş olacak? Henüz veritabanı üzerinde olmayacak – raphadko

+0

neden "henüz veritabanında olmayacak"? –

cevap

42

:

fikri böyle bir şeydir.

if ($user->exists) { 
    // user already exists 
} else { 
    // user created from 'new'; does not exist in database. 
} 
1

Kullanıcınızın yakın zamanda oluşturulup oluşturulmadığını kontrol edebilirsiniz.

if ($user->wasRecentlyCreated) { 
    // new user 
} else { 
    // user already exists 
} 

(Kaynak: this answer den Thomas Kim) Ben firstorNew kullandığınızda

İlgili konular