[디렉토리 설명]
.env
APP_KEY : 비밀번호 암호화, JSON 토큰 암호화 생성등에 사용됨. 형식이 정해져있지는 않고, 쉽게 유추할수 없는 텍스트사용을 권장함.
DATABASE 연결설정
artisan
터미널에서 실행하는 cli용 프로그램 목적
composer.json
컴포저에서 사용하는 패키지들, composer 에서 패키지를 추가한 경우 해당 파일이 업데이트됨.
-> vendor 디렉토리 안에 패키지들이 저장됨. GIT에 공유가 안되기 때문에 composer install 명령어를 통해 vendor 에 패키지를 설치해줘야함
pakage.json
npm 패키지 관리
routes
어떤 경우에도 php 파일에 직접 접근하는 경우가 없음. 웹에서 접근하는 경로는 public 폴더안에 있는 내용을 통해서만 접근
접속할 주소들을 따로 관리하는 용도
> api.php : api route
기본적으로 http://도메인/api/ 경로
기본적으로 아래와 같이 json 이라는 함수를 제공함
* response(), json() 등을 헬퍼함수라 함
Route::get('/ping', function(){
return response()->json(['message' => 'pong']);
});
아래는 컨트롤러 생성 후, 해당 클래스안에 위의 return 내용을 담는 ping이라는 함수를 만들어서 사용한 경우.
Route::get('/ping', [AppController::class, 'ping']);
위와 같이 최종적으로 api.php 에는 어떤 주소로 접속시, 특정 컨트롤러 안에있는 특정 함수를 실행하라는 목록으로 채워지게됨.
* view() 함수
resources \ views 파일의 파일을 불러오는 함수
config
여러 설정들을 관리함
하지만 자주 변경되는 값들은 .env파일에 이미 있음
app
> Http > Controllers
이렇게 디렉토리가 나눠져있는 이유는, 한 파일에 다 적어도 되지만 많은 코드를 한페이지에 담으면 힘드니까, 나눠논거임
아래 명령어로 컨트롤러를 생성. 그냥 새파일 만들어서 생성해도 괜찮음. 파일명, 클래스명만 맞추면
php artisan make:controller 컨트롤러명
으로 컨트롤러 생성, 아래와 같이 컨트롤러 클래스 안에 매서드 생성하여 사용. 예) index, store, update, destory 등
--resource 를 붙이면, 기본 crud 틀이 생성
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class AppController extends Controller
{
public function ping() {
return response() -> json(['message' => 'pong']);
}
}
https://laravel.kr/docs/8.x/controllers
라라벨 8.x - 컨트롤러
라라벨 한글 메뉴얼 8.x - 컨트롤러
laravel.kr
> Http > Models
엘러퀀트 모델 , DB와 연관됨
https://laravel.kr/docs/8.x/eloquent
라라벨 8.x - 시작하기
라라벨 한글 메뉴얼 8.x - 시작하기
laravel.kr
| Laravel8.0(Breeze) + Vue.js 3 (Composition API) CRUD #1 (0) | 2021.12.22 |
|---|
댓글 영역