[]
테이블이 생성되면 데이터 원본의 각 레코드는 테이블의 행이 됩니다.
schema.columns 섹션은 레코드의 각 필드가 테이블 열로 어떻게 모델링되는지를 정의합니다.
예제:
const table = dataManager.addTable("employees", {
data: [
{ id: 1, name: "Alice", birthday: "2000-01-01" },
{ id: 2, name: "Bob", birthday: "2001-05-12" }
],
schema: {
columns: {
id: { dataType: "number", isPrimaryKey: true },
name: { dataType: "string" },
birthday: { dataType: "date" }
}
}
});이 예제에서:
data의 각 객체는 레코드입니다.
레코드의 각 속성(id, name, birthday)은 열이 됩니다.
columns 구성은 이러한 필드가 데이터 매니저에 의해 어떻게 해석되고 관리되는지를 정의합니다.
핵심 구조 설정은 다음을 정의합니다.
열이 원시 데이터에 매핑되는 방식
값이 해석되는 방식
형식이 해석되는 방식
레코드를 고유하게 식별하는지 여부
이는 열 모델링의 구조적 기반을 형성합니다.
schema.columns의 각 항목은 하나의 열 정의를 나타냅니다.
schema: {
columns: {
id: { dataType: "number" },
name: { dataType: "string" }
}
}객체 키(id, name)는 테이블 내에서 열의 논리적 식별자입니다.
이 이름은 다음과 같은 경우에 사용됩니다.
수식에서 필드 참조
관계 정의
행 데이터 접근
View 생성
열 정의 내부에 name 속성이 지정된 경우 객체 키 대신 내부 열 이름으로 사용됩니다.
대부분의 경우 객체 키만으로 충분합니다.
dataName은 열을 원시 데이터의 다른 필드 이름에 매핑합니다.
schema: {
columns: {
firstName: {
dataName: "salesperson"
}
}
}이 예제에서:
salesperson은 원본 데이터의 필드입니다.
firstName은 테이블 내부의 열 이름이 됩니다.
이는 다음과 같은 경우에 유용합니다.
백엔드 필드 이름이 프런트엔드 명명 규칙과 일치하지 않는 경우
여러 필드 이름을 더 명확하게 변경해야 하는 경우
동일한 데이터 원본을 다른 논리 모델로 재사용하는 경우
dataName은 원본 데이터를 수정하지 않습니다.
구문 분석 중 필드가 어떻게 매핑되는지만 정의합니다.
value 속성은 열 값이 어떻게 결정되는지를 정의합니다.
다음 중 하나가 될 수 있습니다.
필드 이름
수식 표현식
columns: {
name: {
value: "username",
}
}이는 열을 레코드의 특정 필드에 명시적으로 매핑합니다.
value가 정의되지 않은 경우 기본적으로 열 이름이 필드 이름으로 사용됩니다.
value에 수식 표현식이 포함되고 dataType이 "formula"로 설정된 경우 해당 열은 계산 열이 됩니다.
TotalUnits: {
dataType: "formula",
value: "=[@UnitsInStock] + [@UnitsOnOrder]"
}이 경우:
열은 원시 데이터 필드에 직접 매핑되지 않습니다.
값은 동일한 레코드의 다른 필드에서 계산됩니다.
수식 열은 계산 후 일반 데이터 열처럼 동작합니다.
dataType은 열 값이 어떻게 해석되는지를 정의합니다.
일반적인 형식은 다음과 같습니다.
"string"
"number"
"boolean"
"date"
"formula"
"object"
"array"
데이터 형식은 다음에 영향을 줍니다.
값 구문 분석(특히 날짜 및 숫자)
수식 동작
유효성 검사 로직
View와의 통합
예를 들어 JSON 데이터에 날짜 문자열이 포함된 경우:
columns: {
birthday: {
dataType: "date"
}
}값은 구문 분석 중 날짜 값으로 변환됩니다.
dataType을 지정하지 않으면 값을 기반으로 형식이 추론됩니다.
isPrimaryKey는 열을 테이블의 기본 키 일부로 지정합니다.
columns: {
id: {
isPrimaryKey: true
}
}기본 키는:
각 레코드를 고유하게 식별합니다.
관계 정의에 필요합니다.
교차 View와 같은 특정 고급 기능에 필요합니다.
기본 키 제약 조건은 테이블 수준에서 적용됩니다.
여러 열에 isPrimaryKey가 지정되면 복합 키를 구성합니다.
핵심 구조 설정은 다음을 정의합니다.
열이 원시 데이터에 매핑되는 방식
값이 계산되는 방식
형식이 해석되는 방식
레코드를 고유하게 식별하는지 여부
다음은 제어하지 않습니다.
유효성 검사 규칙
표시 서식
필터링 동작
스타일
이러한 기능은 다른 열 모델링 섹션에서 별도로 구성됩니다.