1. Spécifiez les attributs dans la méthode de recherche
User::find(1, ['name', 'email']); User::findOrFail(1, ['name', 'email']);
2 Cloner un modèle
Utilisez la méthode de réplication pour cloner. un modèle modèle$user = User::find(1); $newUser = $user->replicate(); $newUser->save();
3. Déterminez si les deux modèles sont identiques
Vérifiez si les identifiants des deux modèles sont identiques à l'aide de la méthode is
$user = User::find(1); $sameUser = User::find(1); $diffUser = User::find(2); $user->is($sameUser); // true $user->is($diffUser); // false;
4 . Recharger un modèle
$user = User::find(1); $user->name; // 'Peter' // 如果 name 更新过,比如由 peter 更新为 John $user->refresh(); $user->name; // John
5. Charger un nouveau modèle
$user = App\User::first();$user->name; // John // $updatedUser = $user->fresh(); $updatedUser->name; // Peter $user->name; // John
6.
Lors de la mise à jour de l'association, utilisez la méthode push pour mettre à jour tous les modèlesclass User extends Model{ public function phone() { return $this->hasOne('App\Phone'); }}$user = User::first(); $user->name = "Peter"; $user->phone->number = '1234567890'; $user->save(); // 只更新 User Model $user->push(); // 更新 User 和 Phone Model
7 Personnalisez le champ supprimé de manière logicielle
Laravel utilise. delete_at comme champ supprimé par défaut, nous changeons delete_at en is_deletedclass User extends Model{ use SoftDeletes; * deleted_at 字段. * * @var string */ const DELETED_AT = 'is_deleted';}ou utilisons l'accesseur
class User extends Model{ use SoftDeletes; public function getDeletedAtColumn(){ return 'is_deleted'; }}
8. Interrogez les attributs modifiés du modèle
$user = User::first(); $user->name; // John $user->name = 'Peter'; $user->save(); dd($user->getChanges());// 输出: [ 'name' => 'John', 'updated_at' => '...' ]
9. Demander si le modèle a changé
$user = User::first(); $user->name; // John $user->isDirty(); // false $user->name = 'Peter'; $user->isDirty(); // true $user->getDirty(); // ['name' => 'Peter'] $user->save(); $user->isDirty(); // falseLa différence entre getChanges() et getDirty()La méthode getChanges() est utilisée pour afficher le ensemble de résultats après la méthode save()
La méthode getDirty() est utilisée avant la méthode save() pour générer l'ensemble de résultats
Interroger les informations du modèle avant la modification
10. 🎜>$user = App\User::first(); $user->name; //John $user->name = "Peter"; //Peter $user->getOriginal('name'); //John $user->getOriginal(); //Original $user record
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!