2017-03-07 4 views
0

Symfony는 프로그래밍 방법 및 우리가 사용해야하는 스타일을 설정하기 위해 일련의 코딩 표준을 사용합니다. 제 질문은 간단하고 간단합니다. Symfony (교리 ORM과 함께)가 내 데이터베이스를 구축하고 구조화 할 때 비슷한 표준을 가지고 있는지 알고 싶습니다. 예를 들어Symfony와 Doctrine에 데이터베이스 표준이 있습니까?

:

  • 나는 낙타 케이스를 사용해야합니까?
  • 테이블 이름을 사용자 또는 사용자 여야합니까
  • 대문자를 사용합니까?
  • 어떤 문자셋이 권장 되나요?

답변

2

기본적으로 Doctrine이 모든 작업을 처리하므로 데이터베이스 이름 지정에 신경 쓸 필요가 없습니다.

엔티티를 기반으로 데이터베이스 스키마를 생성하려면 Doctrine cli commands을 사용해야하며 변경 사항을 유지하려면 Doctrine Migrations을 사용하는 것이 더 좋습니다.

카멜 케이스를 사용해야합니까?

엔티티 클래스 이름의 경우 PSR을 사용하는 것이 좋습니다. 그렇다면 CamelCase를 사용하십시오.

symfony는 기본적으로 밑줄 명명 전략을 사용하므로 엔터티 CamelCasecamel_case 테이블로 생성됩니다 (수동으로 재정의하지 않는 경우).

set another naming strategy 수 있지만 기본 밑줄 전략은 좋은 선택입니다.

내 테이블 이름은 사용자 또는 사용자

user은 ANSI SQL 예약어이다이어야한다, 그래서 나는 users를 사용하는 것이 좋습니다. 또는 단수의 엔터티를 선호하는 경우 대신 person을 시도하십시오.

대문자를 사용합니까?

다시 말하면 Doctrine 명명 전략을 사용하면이 문제를 해결할 수 있습니다. 게다가, 예를 들어 postresql은 모든 테이블 이름과 식별자를 소문자로 변환하므로 대문자를 명시 적으로 사용하면 문제가 발생할 수 있습니다.

어떤 문자셋이 권장됩니까?

필요하면 utf8mb4를 사용하십시오. 다른 것을 사용하는 데는 몇 가지 이유가 있습니다.