라라벨로 개발을 하다 보면 나는 분명 제대로 컨트롤러를 생성하고 라우팅 설정을 맞췄는데 404 에러가 발생해 벙찌게 된 적이 있을 것입니다, 원인은 라우팅 설정 파일 안에 있습니다. web.php 아래는 정상적으로 행동하고 ... Route::get('products/excel', [ProductController::class, 'excel'])->name('products.excel'); Route::get('/products', [ProductController::class, 'index'])->name('products.index'); Route::get('/products/create', [ProductController::class, 'create'])->name('products.create'..
PHP
라라벨 공부 바로가기 개요 기존 프로젝트에서는 라라벨로 액셀을 다운로드하여야 할 경우 주로 Laravel Excel를 사용했었는데, 데이터 커질수록 조금 느린감이 없지 않아 있었습니다. 그래서 라라벨의 다른 액셀 다운로드를 찾아보았습니다. 그래서 찾은게 fast-excel입니다. https://github.com/rap2hpoutre/fast-excel GitHub - rap2hpoutre/fast-excel: 🦉 Fast Excel import/export for Laravel 🦉 Fast Excel import/export for Laravel. Contribute to rap2hpoutre/fast-excel development by creating an account on GitHub. gith..
Laravel CRUD 초급 예제 HTML 삽입 미리보기할 수 없는 소스 라라벨 공부 바로가기 Step 1. 이전 유효성 검사 이전 포스트에서도 유효성 검사를 넣었지만 이는 추천하지 않는 방법입니다. 왜냐하면 사이트가 커질수록 체크해야 하는 Request와 조건들이 많아질 것인데 그럴 때마다 Controller에 코드가 길어지는 것은 보기 좋지 않기 때문이죠. ... class ProductController extends Controller { ... public function store(Request $request) { // 만약 검사해야할 값들과 범위가 훨씬 많아진다면?? $request = $request->validate([ 'name' => 'required', 'content' => 'r..
Laravel 9 CRUD 예제 HTML 삽입 미리보기할 수 없는 소스 라라벨 공부 바로가기 Step 0. Setting 이번 페이지네이션을 진행하는 프로젝트는 Laravel CRUD 초급 예제를 끝낸 뒤를 기준으로 진행합니다. 이전 포스트를 보지 않으신 분이라도 페이지네이션(Pagination) 만드는 데 있어 도움이 될 것입니다. Step 1. Basic Pagination 라라벨에서 지원하는 페이지네이션 함수를 사용하는 부분입니다. 이전 강의를 진행하신 분들 중 product의 개수가 10개를 넘어가시는 분들은 아래와 같이 스타일이 깨집니다. 위 사진에는 보이지 않지만, 아래로 스크롤을 내리면 이미지에 스타일이 적용되지 않은 것이 존재할 것입니다. 이는 제가 resources/view/product..
Laravel 9 CRUD 초급 예제 HTML 삽입 미리보기할 수 없는 소스 라라벨 공부 바로가기 Step 1. Read 상세 보기 페이지를 추가해봅시다. app/Http/Controllers/ProductController.php class ProductController extends Controller { ... // 상세 페이지 public function show(Product $product){ // show 에 경우는 해당 페이지의 모델 값이 파라미터로 넘어옵니다. return view('products.show', compact('product')); } } 라우팅 설정을 추가해줍시다. routes/web.php ... // {product}는 주소의 변경가능한 값이 오는 것을 produc..
Laravel 9 CRUD 초급 예제 HTML 삽입 미리보기할 수 없는 소스 라라벨 공부 바로가기 Step 1. Project Setting 프로젝트를 만들 폴더로 옮긴 후 프로젝트 생성 명령어 입력, dev_seung 부분은 프로젝트 명이며 뒤에 숫자는 라라벨의 버전입니다, 뒤 숫자를 변경하면 라라벨의 버전을 바꿀 수 있습니다. composer create-project laravel/laravel dev_seung "9.*" ※ composer : php에서 사용하는 패키지 및 라이브러를 관리해줍니다. (node의 npm) .env 파일에 데이터베이스 정보 입력 APP_NAME=Laravel APP_ENV=local APP_KEY=base64:yXz/0nPARHiPPIuPe87zvDe0RiqtpX9k..
Larvel에서 Migration을 작성할 때 단일 칼럼에 대한 Unique 속성이 아닌 여러 개의 컬럼을 대상인 복합키로 Unique 속성을 줘야 할 경우 아래처럼 사용이 가능합니다. 기존처럼 단일 컬럼에 Uniuqe를 부여하는 것이 아닌 public function up() { Schema::create('테이블 명', function (Blueprint $table) { $table->id(); $table->foreignId('participant_id')->comment('참여자 아아디')->unique(); $table->foreignId('product_id')->comment('상품 아아디'); $table->timestamp('created_at')->index()->comment('참여..
라라벨로 개발을 진행하다 보면 퍼블리싱 팀에서 준 이미지 파일을 일일이 고치는 게 신물 나게 귀찮습니다. phpstorm의 정규식 검색 변경 기능을 사용하면 쉽게 수정이 가능합니다. 저 같은 경우에는 모든 이미지의 확장가가 png를 사용하다보니 아래와 같은 phpstorm의 정규식 검색을 사용했습니다. (.+)로 찾은 문구가 replace문구 $1로 매핑이 됩니다. 저는 자주 쓰기에 메모 용도로 해둡니다. src\=\"images(.+).png\" => src="{{asset('front/images$1.png')}}"
에러 상황 1. Ajax 요청 및 관리자 단을 들어가는 등 모델 사용 시 아래와 같은 에러 발생 2. ssh에서 php artisan route:list 입력 시 PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 262144 bytes) in 에러 발생 시도 - vagrant의 xdebug 설정을 다 주석처리 - homestead.yamll의 맵핑에 type:apache로 변경하기 를 시도해보았으나 nginx나 설정의 문제가 아닌 코드 상의 에러였습니다 해결 설정을 바꾸지 않았는데 단순히 502 에러라는 이유로 서버나 설정이 원인인 걸로 오해해서 8시간을 날렸네요 php artisan route:list..
phpinfo를 했을 경우 아래와 같이 xdebug가 깔려 있어야 합니다. 없을 시 아래 원문을 통해 다운로드하시길 바랍니다. 참고 : https://42coders.com/how-to-set-up-debugging-with-phpstorm-and-homestead/ How to set up debugging with PhpStorm and Homestead Many PHP developers rely on var_dump (or it’s reincarnations in frameworks: debug(), dump(), dd(), etc) when debugging their code, and in most cases this is 42coders.com 아래와 같이 나와야 합니다. 위와 같이 나올 경..