본문 바로가기
카테고리 없음

[코드이그나이터] 4. codeigniter shield 활용해보기

by Berasix 2022. 11. 11.
반응형

shield를 활용해볼 때 알아두면 유용한 부분들을 짚어 보려고 한다.

shield 관련 소스는 vendor\codeigniter4\shield\src 에 위치하는데, 분석을 해보고 활용해 본다면 꽤 재미있을 것 같다.

그중 몇 가지만 소개해보겠다.

1. Filter

app\Config\Filters.php

session 부분의 except 부분에 로그인하지 않아도 접근할 수 있는 부분을 쉽게 작성할 수 있다.

우리가 등록한 route를 등록한다고 생각하면 된다.

    public $globals = [
        'before' => [
            // 'honeypot',
            // 'csrf',
            // 'invalidchars',
            'session' => ['except' => ['login*', 'register']],            
        ],
        'after' => [
            'toolbar',
            // 'honeypot',
            // 'secureheaders',
        ],
    ];

2. 다국어

vendor\codeigniter4\shield\src\Language\ko\Auth.php

shiled에서 사용하는 항목, 정보, 오류 메시지 등에 대해 한국어는 기본적으로 포함되어 있지 않다.

Auth.php 파일에 한국어로 작업하여 넣어두면 된다.

 

참고로, app\Config\App.php 파일에서 App들에 관련된 설정들을 지정할 수 있다.

아래처럼 ko로 변경하면 내가 위 파일에서 매칭 시킨 한글대로 나오는 것을 확인할 수 있다.

    /**
     * --------------------------------------------------------------------------
     * Default Locale
     * --------------------------------------------------------------------------
     *
     * The Locale roughly represents the language and location that your visitor
     * is viewing the site from. It affects the language strings and other
     * strings (like currency markers, numbers, etc), that your program
     * should run under for this request.
     *
     * @var string
     */
    public $defaultLocale = 'ko';

3. View 수정

vendor\codeigniter4\shield\src\Views 디렉토리

해당 디렉토리에, login, regsiter 등을 확인 할 수 있다.

shield의 View를 사용하려면, 이를 활용하여 수정하도록 하자.

 

4. Model 수정

vendor\codeigniter4\shield\src\Models 디렉토리

model에 컬럼을 추가하거나 할 때 이용해 볼 수 있겠다.

 

 

 

이 글은 필자가 분석, 공부하면서 작성한 포스트입니다. 

잘못된 부분에 대해 알려주시면 수정하도록 하겠습니다.

 

728x90

댓글