laravel

· IT/라라벨
Laravel 10과 AWS SES를 이용하기 위한 설정 가이드1단계: AWS SDK for PHP 설치composer require aws/aws-sdk-php2단계: AWS SES 설정AWS SES를 사용하여 이메일을 보내려면 AWS SES 계정을 설정하고 이메일 주소나 도메인을 인증 필요.참고: 아직 완료하지 않은 경우, '샌드박스' 모드로 발송에 제한이 있음. 보낼 수 있는 메일의 용량과 속도가 크게 제한되며, 모든 수신자가 SES에서 인증을 받아야 함.3단계: Laravel에서 AWS SES 구성Laravel 프로젝트의 config/services.php 수정. AWS SES 인증 정보를 추가// config/services.phpreturn [ // 다른 서비스 구성... 'ses'..
· IT/DB
MySQL DB 에 한글 저장시 깨짐현상이 발생하여 트러블슈팅한 과정을 적어보고자 한다.MySQL Character Set 불일치 문제 해결하기1. 문제 상황# 현상- 한글 데이터 저장 시 깨짐 발생 (예: "안녕하세요" -> "안ë..."")- 저장된 한글 데이터 조회 시 깨짐- 개발 환경에서는 정상 동작하나 운영 환경에서 문제 발생# 증상 확인 방법- 데이터베이스에서 직접 조회했을 때의 데이터 상태- 애플리케이션에서 조회했을 때의 데이터 상태2. 원인 분석-- 1. Character Set 레벨Server > Database > Table > Column 순으로 적용-- 2. Connection 설정 확인SHOW VARIABLES LIKE '%character%';SHOW VARIABLES LIK..
· IT/라라벨
Laravel에서 미들웨어(Middleware)는 애플리케이션의 HTTP 요청 처리 과정에서 핵심적인 역할을 담당한다. 미들웨어는 요청(Request)과 응답(Response) 사이에서 동작하며 다양한 기능을 수행할 수 있다.1. 미들웨어의 기본 구조미들웨어는 handle 메서드를 구현하며, $request와 $next 매개변수를 받음.public function handle($request, Closure $next){ // 요청 전 처리 $response = $next($request); // 응답 후 처리 return $response;}요청 전 처리: $next($request) 호출 이전에 실행되며, 요청이 애플리케이션의 다른 부분에 도달하기 전에 동작.응답 후 처리: $n..
· IT/라라벨
Laravel 로 개발을 하다 보면 Facade, Singleton, Alias 라는 용어를 접할수 있게 되는데 Facade 를 공부하다보면 Alias 는 뭐지 궁금하기도하고 Singleton 을 공부하고나면 Facade 와 무슨 차이인지 궁금해질수도 있다. (Facade 도 하나의 request 생명주기 동안 static 하게 전역적으로 값을 관리할수 있기 때문) 오늘은 각 개념의 의미, 차이점, 그리고 언제 어떻게 사용하는 것이 좋은지 알아보려고 한다. Facade란?Facade는 복잡한 라이브러리의 기능을 간단한 인터페이스로 사용할 수 있게 해주는 디자인 패턴입니다. Laravel에서 Facade는 서비스 컨테이너에 바인딩된 객체에 대한 "정적" 인터페이스를 제공 Facade의 특징서비스 컨테이너..
· IT/라라벨
트랜잭션의 기본 개념트랜잭션은 데이터베이스의 상태를 변경시키는 하나의 논리적 작업 단위. 트랜잭션은 다음과 같은 특징이 있다. (ACID)원자성(Atomicity): 트랜잭션의 모든 연산이 완전히 수행되거나 전혀 수행되지 않아야 함.일관성(Consistency): 트랜잭션 전후로 데이터베이스는 일관된 상태를 유지해야 함.격리성(Isolation): 동시에 실행되는 트랜잭션들이 서로 영향을 미치지 않아야 함.지속성(Durability): 성공적으로 완료된 트랜잭션의 결과는 영구적으로 반영되어야 함. Nested TransactionsNested transactions 은 트랜잭션 내에서 또 다른 트랜잭션을 시작하는 개념. 이는 복잡한 작업을 더 작은 단위로 나누어 관리할 수 있게 해준다. 그러나 MySQL..
· IT/라라벨
인증 실패 발생시 클라이언트의 device id 와 액세스 토큰을 로그로 남겨야 할 일이 있어 작업을 하던 도중 액세스 토큰이 보이질 않아 당황. 코드를 좀 살펴보니 passport 에서 Authoization header 를 날려버리길래 궁금해서 살펴보니 이러한 히스토리가 있었다. 누군가가 이걸 왜 날리냐고 이슈에 질문.. https://github.com/laravel/passport/issues/1309 Do not overwrite the authorization header · Issue #1309 · laravel/passport Hi, in the TokenGuard the authorization header will be overwritten when the authentication r..
· IT/라라벨
N - N 관계시 보통 중간에 pivot 테이블을 두어 구현하는데 이때 pivot 테이블에 관계 맵핑뿐만 아니라 추가적으로 컬럼을 추가하여 관리가 가능하다. 그리고 pivot 테이블의 컬럼 값들에 대한 crud 는 다음과 같은 메소드를 자주 활용한다. 문서 참조 attach detach sync syncWithoutDetaching 쿼리빌더 활용 updateOrCreate 와 같은 기능을 사용하고 싶은 경우 쿼리빌더를 반환 받아 활용하도록 하자.
· IT/라라벨
$attributes 는 Model 에서 라라벨의 필드를 담는 배열 변수이다. 보통 $attributes 를 통해 Model 필드에 접근 하는건 Mutator 나 cast 같은 내부 메소드를 통해 접근할때 일것이다. ex) use App\Support\Address; use Illuminate\Database\Eloquent\Casts\Attribute; /** * Interact with the user's address. * * @return \Illuminate\Database\Eloquent\Casts\Attribute */ protected function address(): Attribute { return Attribute::make( get: fn ($value, $attributes) =..
_이준호_
'laravel' 태그의 글 목록