Maison >cadre php >Laravel >Savez-vous comment utiliser Laravel de ces 10 manières ?

Savez-vous comment utiliser Laravel de ces 10 manières ?

藏色散人
藏色散人avant
2021-01-22 14:00:052113parcourir
Vous trouverez ci-dessous

Tutoriel Laravel colonne pour présenter 10 méthodes d'utilisation dans Laravel, j'espère que cela sera utile aux amis dans le besoin !

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èles

class 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_deleted

class 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();  // false
La 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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer