1. find 메소드에 속성을 지정합니다User::find(1, ['name', 'email']);
User::findOrFail(1, ['name', 'email']);
Replicate 메소드를 사용하여 모델 복제
$user = User::find(1); $newUser = $user->replicate(); $newUser->save();
3. 두 모델이 동일한지 확인합니다. 모델 ID가 동일한지 여부에 관계없이 is 메소드를 사용하세요
$user = User::find(1); $sameUser = User::find(1); $diffUser = User::find(2); $user->is($sameUser); // true $user->is($diffUser); // false;
4. 모델을 다시 로드하세요
$user = User::find(1); $user->name; // 'Peter' // 如果 name 更新过,比如由 peter 更新为 John $user->refresh(); $user->name; // John5. 연관 모델을 업데이트하세요. , 푸시 메소드를 사용하면 모든 모델을 업데이트할 수 있습니다
$user = App\User::first();$user->name; // John // $updatedUser = $user->fresh(); $updatedUser->name; // Peter $user->name; // John7. 사용자 정의 일시 삭제 필드
Laravel은 기본적으로 삭제된_at를 다음과 같은 방법으로 삭제된_at를 is_deleted로 변경합니다
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또는 접근자를 사용합니다
.
class User extends Model{ use SoftDeletes; * deleted_at 字段. * * @var string */ const DELETED_AT = 'is_deleted';}8 . 모델의 변경된 속성을 쿼리합니다
class User extends Model{ use SoftDeletes; public function getDeletedAtColumn(){ return 'is_deleted'; }}
9. 모델이 변경되었는지 쿼리합니다
$user = User::first(); $user->name; // John $user->name = 'Peter'; $user->save(); dd($user->getChanges());// 输出: [ 'name' => 'John', 'updated_at' => '...' ]getChanges()와 getDirty()getChanges() 메서드의 차이점은 결과 set을 출력하는 save() 메소드getDirty() 메소드는 결과 set을 출력하기 위한 save() 메소드 전에 사용됩니다
10. 수정하기 전에 모델 정보를 쿼리합니다
$user = User::first(); $user->name; // John $user->isDirty(); // false $user->name = 'Peter'; $user->isDirty(); // true $user->getDirty(); // ['name' => 'Peter'] $user->save(); $user->isDirty(); // false
위 내용은 Laravel을 이러한 10가지 방법으로 사용하는 방법을 알고 계시나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!