본문 바로가기
728x90

Eloquent2

[Laravel 라라벨] 테이블 간 관계에서 외래 키를 명시해야하는 이유 🚨 코딩하다 의문점이 생겼는데요. public function a(): BelongsTo { return $this->belongsTo(A::class, 'specific_id'); }위처럼 무언가를 정의해줘야할 때가 있더라고요? 아니면 PK 를 제대로 찾지 못하는 이슈가 발생을 했습니다.냅다 알아보았는데요.1. 원인 분석처음에 문제가 발생했던 이유는 Laravel이 A 테이블에서 기본적으로 user_id를 외래 키로 예상했기 때문입니다.Laravel의 기본 규칙: hasMany()나 belongsTo() 관계에서는 현재 모델의 기본 키와 snake_case 형태로 된 외래 키를 자동으로 매핑합니다.즉, 기본적으로 user_id 컬럼을 찾으려 하다가, 해당 컬럼이 없어서.. 2025. 2. 6.
[Laravel 라라벨] Eloquent - attribute, method 접근 Laravel 을 사용하면서 조금 헷갈렸던 개념에 대해 정리해보겠습니다.1. 속성처럼 접근하는 것과 메서드처럼 접근하는 것의 차이속성처럼 접근Laravel에서 속성처럼 접근할 때는 모델의 속성(attribute) 또는 Attribute 접근자를 통해 값을 가져옵니다.속성(Attribute): 데이터베이스 테이블의 컬럼과 직접적으로 매핑됩니다. 예: id, name.Attribute 접근자: 추가적인 로직을 통해 계산된 값을 반환하는 커스텀 속성입니다. getAttribute 메서드를 통해 호출됩니다.사용법:$snapshot = Snapshot::find(1);// 속성 접근$done = $snapshot->done; // 데이터베이스 컬럼 `done`의 값을 가져옴$unopened = $snapshot-.. 2025. 1. 29.
728x90