laravel 12

Laravel에서 CRUD 구현하기 (Create, Read, Update, Delete)

Laravel은 PHP 기반의 대표적인 웹 애플리케이션 프레임워크로, 현대적인 웹 개발에 필요한 MVC(Model-View-Controller) 아키텍처, RESTful 라우팅, Eloquent ORM, Blade 템플릿 등 다양한 기능을 기본으로 제공한다. 그 중에서도 CRUD(Create, Read, Update, Delete) 기능은 웹 애플리케이션에서 가장 기본적이고 핵심적인 기능으로, Laravel에서는 이를 매우 직관적이고 간결한 문법으로 구현할 수 있다. Artisan CLI, 마이그레이션, 라우팅, 컨트롤러, Eloquent 모델, Blade 뷰까지 연계되는 Laravel의 구조는 CRUD 작업을 빠르고 체계적으로 구현할 수 있는 환경을 제공한다. 이 글에서는 Laravel 12 버전을 기..

Laravel 2025.05.03

Laravel Migration & Seeding (라라벨 마이그레이션과 시딩)

Laravel에서 마이그레이션과 시딩이 중요한 이유Laravel에서는 데이터베이스 테이블 생성과 더미 데이터 입력을 코드 기반으로 관리할 수 있도록 마이그레이션(Migration)과 시딩(Seeding) 기능을 제공한다.이 기능들을 활용하면 데이터베이스의 구조와 초기 데이터를 버전 관리 시스템(Git 등)으로 함께 관리할 수 있어, 협업, 배포, 유지보수에 있어 일관성과 안정성을 확보할 수 있다.✅ 왜 코드로 데이터베이스를 관리해야 할까?전통적인 방식Laravel 방식SQL 수동 작성 및 직접 실행PHP 코드로 테이블 구조 정의사람마다 다른 SQL 작성모든 환경에서 구조 일치 보장복제, 관리 어려움php artisan migrate로 자동 생성즉, 마이그레이션을 통해 데이터베이스 구조를 코드처럼 관리할 ..

Laravel 2025.05.01

Laravel Model (라라벨 모델)과 Eloquent ORM 기본

Laravel에서는 데이터베이스와의 상호작용을 쉽고 직관적으로 처리하기 위해 Model(모델)과 ORM(Object-Relational Mapping) 방식을 사용한다. 특히, Laravel이 기본으로 제공하는 Eloquent ORM은 복잡한 SQL 쿼리를 직접 작성하지 않고도 데이터베이스 작업을 간결하게 수행할 수 있도록 지원한다.1. 모델(Model)이란 무엇인가?모델(Model)은 데이터베이스 테이블과 1:1로 매핑되는 PHP 클래스이다. Laravel에서는 각 테이블을 대표하는 모델 클래스를 만들어, 데이터를 조회하거나 저장할 때 모델을 통해 객체 지향적으로 접근하게 된다.✅ 기본 개념모델은 데이터베이스 레코드(한 줄)를 하나의 객체(Object)로 표현한다.모델을 이용하면 SQL 쿼리를 직접 작..

Laravel 2025.04.29

Laravel View와 Blade 템플릿

Laravel에서는 사용자에게 보여지는 화면을 구성하기 위해 뷰(View) 라는 개념을 사용한다. 뷰는 기본적으로 HTML을 기반으로 작성되며, PHP 코드를 삽입해 동적인 화면을 만들 수 있다. Laravel에서는 이 작업을 더 깔끔하고 생산적으로 수행하기 위해 Blade라는 강력한 템플릿 엔진을 제공한다. Blade를 사용하면 복잡한 PHP 코드를 깔끔한 문법으로 대체할 수 있으며, 템플릿 상속, 컴포넌트, 조건문, 반복문 등의 기능을 활용해 코드를 재사용하고 구조화할 수 있다.이 글에서는 뷰(View)와 Blade 템플릿의 기본 개념, 사용법, 그리고 실제 애플리케이션에 어떻게 적용하는지를 체계적으로 정리한다.1. 뷰(View)란 무엇인가?View는 사용자가 브라우저를 통해 직접 보게 되는 화면을 ..

Laravel 2025.04.29

Laravel Controller (라라벨 컨트롤러) 만들기

Laravel에서 컨트롤러(Controller)는 사용자의 요청을 받아 필요한 로직을 수행한 뒤, 뷰(View) 또는 응답(JSON 등)을 반환하는 역할을 한다. MVC 패턴에서 컨트롤러는 모델(Model)과 뷰(View)를 연결해주는 교통 정리 담당자와 같은 존재이다. 이 글에서는 artisan 명령어를 이용해 컨트롤러를 생성하고, 기본 메서드 구조를 이해하는 과정을 정리한다.1. 컨트롤러 생성하기 (artisan 명령어)Laravel에서는 artisan이라는 명령어 기반 도구를 제공하여, 컨트롤러를 빠르고 표준화된 형태로 생성할 수 있다. artisan CLI(Command Line Interface)를 활용하면 컨트롤러뿐만 아니라 모델, 마이그레이션, 시더 등도 효율적으로 만들 수 있다.✅ 기본 컨..

Laravel 2025.04.28

Laravel Routing (라라벨 라우팅) 기본

Laravel에서 라우팅(Routing)은 사용자의 요청 URL을 컨트롤러 (controller) 나 클로저 (closure)와 같은 적합한 로직에 연결해주는 중요한 기능이다. 프로젝트 구조를 설계할 때 가장 먼저 정의해야 하는 부분이며, Laravel의 전체 동작 흐름을 이해하는 데 핵심적인 개념이다. 1. 라우트 파일의 위치와 역할Laravel에서는 라우팅 설정이 routes/ 폴더 안에 정의된다. 주요 파일은 다음과 같다:web.php – 웹 브라우저를 대상으로 하는 라우트를 정의한다. 쿠키, 세션, CSRF 보호가 기본 적용된다.api.php – API 요청 전용 라우트 파일이다. /api 접두어가 자동으로 붙으며, 상태 저장(session)은 사용하지 않고 JSON 응답을 반환한다.console..

Laravel 2025.04.26

Laravel Folder (라라벨 폴더) 구조

Larvel Framework (라라벨 프레임워크)를 처음 접하면 수많은 폴더와 파일 구조에 당황하게 된다. 하지만 이 구조를 이해하면 라라벨 프로젝트 전반의 흐름을 잡는 데 큰 도움이 된다. 이 글에서는 각 폴더의 역할을 간결하고 명확하게 정리한다.1. app/ – 애플리케이션 핵심 로직app/ 폴더는 Laravel 애플리케이션의 핵심 로직이 집중된 영역이다. 이 폴더 안에는 요청을 처리하고 비즈니스 로직을 담당하는 다양한 클래스들이 정의되어 있으며, 프로젝트 전반에 걸쳐 가장 많이 다루게 되는 부분이다.Http/ – 사용자의 요청을 처리하는 컨트롤러(Controller), 요청 전후 작업을 수행하는 미들웨어(Middleware), 그리고 폼 요청 검증을 위한 Form Request 클래스가 이곳에 위..

Laravel 2025.04.25

Laravel이 뭔가요? 웹개발 입문자를 위한 초간단 개념 정리

Laravel은 PHP 기반의 웹 애플리케이션 프레임워크로, 빠르고 구조적인 개발을 도와주는 도구이다. 초보자부터 실무자까지 모두 사용할 수 있을 만큼 간편하고 강력한 기능을 제공한다.📌 왜 Laravel인가? 웹 개발자들이 선택하는 이유PHP로 작업하는 프로젝트의 규모가 커지면 코드 관리, 보안, 확장성 측면에서 한계를 느끼게 된다. 이럴 때 Laravel을 도입하면 다음과 같은 이점을 얻을 수 있다.모듈화된 구조로 유지보수가 쉽다.라우팅, 데이터베이스, 인증등 웹 개발에 필요한 핵심 기능이 기본으로 제공된다.XSS, CSRF등의 보안 공격을 방어할 수 있는 기능이 내장되어 있다.문서화가 잘 되어 있고, 커뮤니티가 활발하여 학습 자료가 풍부하다.이러한 이유로 Laravel은 입문자에게도 적합하며, 실..

Laravel 2025.04.23

Laravel 프로젝트 GitHub 연동

📁 1. Git 초기화 및 사용자 설정 Laravel 프로젝트 디렉터리로 이동한 후 Git을 초기화하고 사용자 정보를 입력한다:cd /var/www/myAppgit initgit config user.name "Your Name"git config user.email "you@example.com" 🔍 만약 현재 설정된 사용자 정보를 모를 경우 아래 명령어로 확인할 수 있다:git config --global user.namegit config --global user.email 🛡️ 2. .gitignore 파일 확인 📄 .gitignore란?Git에서 버전 관리에서 제외할 파일 또는 폴더를 지정하는 설정 파일이다.이 파일에 정의된 경로는 git add 명령어로도 추적되지 않으며, GitHub..

Laravel 2025.04.22

Laravel 세션 테이블 오류(SQLSTATE[42S02]) 해결 방법

🧩 에러 내용Laravel 프로젝트를 실행할 때 다음과 같은 에러 메시지가 나타날 수 있다:SQLSTATE[42S02]: Base table or view not found: 1146 Table 'aero_db.sessions' doesn't exist (Connection: mysql, SQL: select * from sessions where id = ... limit 1)이 에러는 Laravel이 세션을 데이터베이스에 저장하려고 할 때, 세션 테이블(sessions)이 존재하지 않아 발생한다.🔍 원인 분석.env 파일에 SESSION_DRIVER=database로 설정되어 있음그러나 MySQL 데이터베이스 내에는 sessions 테이블이 아직 없음Laravel은 세션 데이터를 해당 테이블에 저..

Laravel 2025.04.22

Laravel Unknown Database 오류(SQLSTATE[HY000] [1049]) 해결 방법

🧩 에러 메시지SQLSTATE[HY000] [1049] Unknown database 'myApp_db' (Connection: mysql, SQL: select * from `sessions` where `id` = ... limit 1)이 오류는 Laravel이 데이터베이스에 접속하려 할 때, 지정한 데이터베이스 myApp_db가 존재하지 않아 발생하는 오류이다.🔍 원인 분석.env 파일 또는 config/database.php에 설정된 DB 이름이 존재하지 않음MySQL 서버에는 myApp_db라는 이름의 데이터베이스가 생성되어 있지 않음Laravel이 세션 또는 마이그레이션 등 DB 접근 시도 중 실패함✅ 해결 방법1️⃣ MySQL에 접속하여 DB 생성 및 확인터미널 또는 MySQL 클라이언트..

Laravel 2025.04.22

Laravel 최신버전 설치 (2025년 기준)

🌐 1. Laravel이란?Laravel은 PHP로 작성된 오픈소스 웹 애플리케이션 프레임워크이며, MVC(Model-View-Controller) 아키텍처를 기반으로 설계되었다. 깔끔한 문법, 내장된 인증 및 보안 기능, Eloquent ORM 등 다양한 기능을 제공하여 빠르고 안정적인 웹 개발이 가능하다.🛠️ 2. Laravel 설치 전 준비사항📋 2.1 필수 구성요소 (LEMP Stack 기반)Linux (Ubuntu 22.04 LTS 이상 권장)Nginx (최신 안정화 버전)MySQL (또는 MariaDB)PHP >= 8.4 + PHP-FPMComposer (PHP 패키지 관리자)🔌 2.2 PHP 확장 모듈 설치Laravel은 다음과 같은 PHP 확장 모듈을 필수적으로 요구한다. 이 모듈들..

Laravel 2025.04.22
728x90
반응형