IT & 개발/laravel (9) 썸네일형 리스트형 Laravel에서 Custom Role Middleware 만들기 Laravel에서 사용자 권한(Role)에 따라 접근을 제한하려면 기본적인 인증 미들웨어 외에 추가적인 Role 미들웨어를 구현해야 합니다. 이번 글에서는 Custom Role Middleware를 생성하고 적용하는 방법을 단계별로 설명하겠습니다.1. Middleware 생성먼저 터미널에서 아래 명령어를 실행하여 RoleMiddleware를 생성합니다.php artisan make:middleware RoleMiddleware이 명령을 실행하면 app/Http/Middleware/RoleMiddleware.php 파일이 생성됩니다.2. Role Middleware 구현app/Http/Middleware/RoleMiddleware.php 파일을 열고 아래와 같이 수정합니다.route('login'); .. Laravel에서 increment() 메서드 사용 시 즉시 업데이트되지 않는 문제 해결하기 Laravel 개발자들이 자주 마주치는 문제 중 하나는 increment() 메서드를 사용했을 때 값이 즉시 업데이트되지 않는 현상입니다. 이번 포스트에서는 이 문제의 원인과 해결 방법에 대해 알아보겠습니다.문제의 원인increment() 메서드를 사용했는데 값이 즉시 반영되지 않는 이유는 주로 다음과 같습니다:데이터베이스 트랜잭션캐싱 메커니즘모델 인스턴스가 새로고침되지 않음 (관계 모델일 경우 eager loading으로 인한 문제)해결 방법이 문제를 해결하기 위한 여러 가지 방법을 살펴보겠습니다.1. 모델 새로고침하기increment() 메서드 사용 후 모델을 새로고침하면 최신 데이터를 가져올 수 있습니다.$model->increment('column');$model->refresh();2. DB::.. Laravel에서 데이터 정렬하기: orderBy 메소드 활용하기 웹 애플리케이션을 개발할 때, 데이터베이스에서 원하는 정보를 효율적으로 정렬하는 것은 매우 중요합니다.Laravel은 직관적인 Eloquent ORM(Object-Relational Mapping)을 사용하여 데이터베이스 작업을 단순화해줍니다.이번 포스팅에서는 Laravel에서 orderBy 메소드를 사용하여 데이터 정렬을 수행하는 방법과 특정 우선순위를 설정하는 방법에 대해 알아보겠습니다.기본적인 데이터 정렬Laravel에서는 Eloquent 모델을 통해 데이터베이스 쿼리를 쉽게 만들 수 있습니다.가장 기본적인 정렬 방법은 orderBy 메소드를 사용하는 것입니다.use App\Models\YourModel;// 오름차순 정렬$results = YourModel::orderBy('column_name'.. 라라벨에서 커스텀 helper 등록하기 라라벨 커스텀 헬퍼Laravel에서 커스텀 헬퍼를 등록하는 방법은 다음과 같습니다.헬퍼는 자주 사용하는 기능을 간편하게 사용할 수 있도록 도와주는 유틸리티 함수입니다.1. 헬퍼 파일 생성먼저, 헬퍼 파일을 생성합니다. Laravel의 app 디렉터리 안에 Helpers라는 디렉터리를 만들고 그 안에 헬퍼 파일을 생성할 수 있습니다.mkdir app/Helperstouch app/Helpers/helpers.php2. 헬퍼 함수 작성helpers.php 파일에 원하는 헬퍼 함수를 정의합니다. 예를 들어, 문자열을 변환하는 헬퍼 함수를 추가할 수 있습니다.3. 헬퍼 파일 로드하기Laravel이 헬퍼 파일을 자동으로 로드할 수 있도록 설정해야 합니다. 이를 위해 composer.json 파일을 수정합니다."a.. Laravel의 whereJsonContains 메서드: JSON 데이터 필터링의 강력한 도구 Laravel은 PHP 프레임워크 중 하나로, 웹 애플리케이션 개발을 더 쉽게 만들어주는 다양한 기능을 제공합니다. 그중 하나가 whereJsonContains 메서드로, JSON 필드에서 특정 값을 필터링하는 데 유용하게 사용됩니다. 이 글에서는 whereJsonContains의 사용법과 실제 예시를 통해 그 기능을 살펴보겠습니다.1. whereJsonContains 메서드란?whereJsonContains는 Eloquent 쿼리 빌더에서 사용되는 메서드로, 데이터베이스에서 JSON 열 안에 특정 값이 포함되어 있는지를 확인하는 데 사용됩니다. 이 메서드는 주로 JSON 형식으로 저장된 데이터가 포함된 필드를 조회할 때 유용합니다.2. 사용법whereJsonContains 메서드는 다음과 같은 형태로 .. 라라벨 Sail 설정 가이드 라라벨 Sail은 라라벨 프레임워크를 사용하여 웹 애플리케이션 개발을 위한 도구입니다. Sail은 Docker를 기반으로 동작하며, 컨테이너 기술을 사용하여 개발 환경을 구성합니다. 이를 통해 개발자는 별도의 환경 설정 없이 라라벨 프로젝트를 빠르게 실행하고 테스트 할 수 있습니다. 이 글에서는 라라벨 Sail의 설정 방법과 기능에 대해 알아보겠습니다. 1. Sail 설치하기 - 먼저, 라라벨 프로젝트를 생성합니다. - 터미널에서 다음 명령어를 실행하여 Sail을 설치합니다: `composer require laravel/sail --dev` - Sail 설치가 완료되면 `sail` 명령어를 사용할 수 있습니다. 2. Sail 설정하기 - 프로젝트 루트 디렉토리에서 `vendor/bin/sail up` .. [Laravel] log permission denied laravel server 운용중 아래와 같은 에러 발생 The stream or file "/var/www/html/{server-dir}/storage/logs/laravel-2023-07-11.log" could not be opened in append mode: failed to open stream: Permission denied The exception occurred while attempting to log: The stream or file 로그 파일을 write 할 권한이 없다는 오류. 원인은 라라벨 스케쥴러를 crontab 으로 등록할 때 root user로 등록해서, root user가 생성한 log 파일을 서버 실행 유저 (nginx)가 접근하지 못하기 때문이었다. 해결방법: .. [laravel5.5] 302 redirect status code 컨텐츠를 수정할 Controller를 작성한 후 Route::post('/contents-video-sort', 'ContentsController@changeLectureOrder'); 프론트에서 호출하였을 때 axios.post("/contents-video-sort", {list : this.list.data}) .then(...) 아래와 같이 302 redirect error 가 나면서 호출이 되지 않는 문제가 발생하였다. 찾아보니 CSRF 문제일 수 있다고 했다. https://stackoverflow.com/questions/42426859/laravel-ajax-post-request-does-not-work-302-found Laravel Ajax POST Request does not w.. 이전 1 2 다음