XpressEngine
  • INTRODUCE
  • 시작하기
    • 권장 사양
    • 터미널 환경 설치
    • 웹 환경 설치
    • 업데이트
    • 문제 해결(디버깅)
  • 사이트 설정
    • 회원 설정 및 관리
    • 관리자 비밀번호 설정
    • 사이트맵 추가 및 제거
    • 컨텐츠 관리 및 신고 집계
    • Store 토큰 설정
    • 익스텐션 설치 / 업데이트
    • 기본 테마 설정
    • SEO 설정
    • 다국어 설정
    • 캡챠 설정
  • 번들 플러그인
    • 미디어 라이브러리
    • 외부페이지 플러그인
    • 플러그인 업로드
  • 개발자 문서
    • 개요
    • 디렉토리 구조
    • 컴포넌트
    • 플러그인
    • 서비스
    • 라이프 사이클
    • 라우팅
    • 컨트롤러
    • 요청
    • 응답
    • 프레젠터
    • 뷰
    • 템플릿
  • 플러그인 개발
    • 개요
    • 기본경로 및 구조
    • 기본 플러그인 생성
    • 플러그인 정보 추가 및 수정
    • 관리자 사이트 메뉴 추가
    • 위젯 개발/제작
    • 모듈 개발/제작
    • 에디터 제작
    • 에디터 툴 제작
    • UI 오프젝트 제작
    • 토글 메뉴 제작
    • 다이나믹 필드 제작
    • 다이나믹 필드 스킨 제작
  • 테마 개발/제작
    • 기본경로 및 구조
    • 기본 테마 생성
    • 서브 테마 활용
    • 설정 파일 작성
    • 테마 편집 기능
  • 스킨 개발/제작
    • 기본경로 및 구조
    • 기본 스킨 생성
    • 설정 파일 작성
  • 서비스
    • 카테고리
    • 캡챠
    • 설정
    • 문서
    • 키생성(Keygen)
    • 메뉴/모듈
    • 이벤트/인터셉션
    • 파일/스토리지
    • 회원/인증
    • 모바일
    • 권한
    • 데이터베이스
    • 메일
    • 프론트엔드
    • 이미지처리
    • 세션
    • 헬퍼
    • 쿠키
    • UI오브젝트/폼빌더
    • 카운터
    • 휴지통
    • 유효성검사
    • 오류처리
    • 테마
    • 위젯박스
  • 프론트엔드 (JS)
    • 프론트 엔드 JS 시작하기
    • Lang
    • Page
    • Page Modal
    • Request
    • Validator
Powered by GitBook
On this page
  • 키생성(keygen)
  • 설정
  • 사용
  • 모델

Was this helpful?

  1. 서비스

키생성(Keygen)

Previous문서Next메뉴/모듈

Last updated 6 years ago

Was this helpful?

키생성(keygen)

XE는 단순하고 유추하기 쉬운 기존의 데이터베이스를 이용한 auto_increment를 벗어나, 유일성을 보장하면서 유추하기 어려운 키를 생성할 수 있는 기능을 제공합니다. 키의 생성은 UUID 방식으로 ramsey/uuid를 이용해 사용자가 간편하게 고유키를 얻을 수 있도록 해줍니다.

설정

키생성기의 설정은 config/xe.php의 uid 항목에 있습니다.

'uid' => [
  'version' => 4,
  'namespace' => 'xe'
]

version은 사용할 UUID의 버전을 말합니다. 1, 3, 4, 5 네가지 값 중 하나를 입력할 수 있고, 기본은 4 버전을 사용합니다. namespace는 3, 5 버전에서 사용될 네임스페이스를 가리킵니다.

각 버전의 차이는 등에서 확인하실 수 있습니다.

사용

키의 생성은 generate 메서드를 통해 이루어 집니다.

$keygen = app('xe.keygen');
$id = $keygen->generate();

생성된 키는 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 와 같은 형식을 가집니다.

모델

XE에서는 Illuminate\Database\Eloquent\Model을 상속한 DynamicModel 모델을 이용하는 경우 키생성기를 통해 고유키를 제공합니다. 키생성기에서 제공하는 키를 사용하고자 한다면 해당 모델의 incrementnig을 비활성해야 합니다.

use Xpressengine\Database\Eloquent\DynamicModel;

class MyModel extends DynamicModel
{
  public $incrementing = false;

  ...
}
위키