모델 개요

모델은 App Maker에서 데이터를 구성하고 저장합니다. 데이터베이스의 테이블이나 스프레드시트의 시트와 같은 모델을 생각할 수 있습니다. 스프레드시트는 열을 기준으로 데이터를 구성하고 행에 데이터를 저장합니다. 모델은 필드를 기준으로 데이터를 구성하고 레코드라고 하는 컬렉션에 데이터를 저장합니다.

예를 들어 Weyland Corp라는 새로운 스타트업에서 근무하는데 직원의 이름, ID 번호, 생년월일을 추적하는 HR 앱을 빌드하려고 한다고 가정해 봅니다. App Maker에서 Name, EmployeeID, Active, DateOfBirth라는 4개의 필드가 있는 Employee 모델을 만들 수 있습니다. 앱에서 사용자가 각 직원의 모델에 레코드를 추가할 수 있는 페이지를 만듭니다. 스프레드시트에서 동일한 데이터가 열과 행에 저장됩니다.

NameEmployeeIDActiveDateOfBirth
Carter Burke2179426False2150/03/30
Ellen Ripley1612122True2092/01/7
Employee 모델의 레코드 2개

모델 유형

App Maker는 다음과 같은 5가지 유형의 모델을 지원합니다.

  • Google Cloud SQL — 여러 애플리케이션 간에 공유할 수 있는 기본 MySQL 테이블

    • 기본 — G Suite 관리자는 조직의 App Maker 앱 간에 공유되는 Cloud SQL 인스턴스를 설정할 수 있습니다. 이 기능이 사용 설정된 경우 앱에 Cloud SQL 데이터 모델을 추가하면 자동으로 새 데이터베이스가 만들어집니다. 앱에서 설정이 불필요하고 사용하기 쉬운 데이터베이스가 필요하면 이 옵션을 선택하세요.

    • 커스텀 — 관리자가 기본 Cloud SQL 인스턴스를 설정한 후에는 사용자가 고유한 Cloud SQL 인스턴스를 설정할 수 있습니다. 다음과 같은 경우에 이 옵션을 선택하세요.

      • 애플리케이션이 많은 사용자에게 서비스를 제공하거나 많은 양의 데이터를 저장하는 경우
      • 데이터베이스를 다른 애플리케이션과 공유해야 하는 경우
      • 데이터베이스를 관리하거나 Cloud SQL 인스턴스를 제어해야 하는 경우
  • 계산된 모델 — 스크립트를 사용하여 데이터를 생산하는 '가상' 모델입니다. 이 모델을 사용하면 모델 또는 기타 소스의 데이터를 조작할 수 있지만 사용자가 고급 서버 측 스크립트를 작성하여 이를 설정하는 데 익숙해야 합니다.

  • 계산된 SQL 모델 — Google Cloud SQL 데이터베이스에 대해 실행되는 쿼리입니다.

  • 클라이언트 측 계산된 모델 — 데이터를 동기식으로 가져오기 위해 실행되거나 콜백을 사용하여 비동기 결과를 반환하는 클라이언트 측 쿼리 스크립트입니다.

  • 디렉터리 모델 — 조직의 디렉터리에서 정보를 가져오는 모델입니다(예: 이메일 주소와 전화번호).

모델 편집기

모델 편집기는 모델의 구조와 설정을 정의하는 곳입니다. App Maker를 사용하면 모델을 만든 후에 이 편집기로 이동합니다. 모델 편집기로 돌아가려면 왼쪽 탐색 메뉴에서 모델의 이름을 클릭합니다. 편집기에는 모델의 유형에 따라 최대 5개의 탭이 있습니다.

  • 필드 — 모델에 새 필드를 추가하고 필드 설정을 편집합니다. 예를 들어 Employee 모델에 Email 필드를 추가하고 필요에 따라 설정할 수 있습니다.

  • 데이터 소스 — 쿼리할 때 모델에서 반환하는 레코드의 하위 집합을 포함하여 모델이 데이터를 검색하고 저장하는 방식을 정의합니다. 예를 들어 쿼리할 때 활성 직원만 반환하는 Employee 모델의 데이터 소스를 만들 수 있습니다.

  • 이벤트 — 앱이 레코드를 표시, 생성 또는 삭제할 때 실행되는 서버 측 스크립트를 만듭니다. 예를 들어 사용자가 새로운 직원 레코드를 만들면 자동으로 HireDate 필드를 채우는 Employee 모델의 스크립트를 작성할 수 있습니다. 클라이언트 측 계산된 모델에는 사용할 수 없습니다.

  • 관계 — 모델 내에서 또는 모델 간에 레코드 사이의 관계를 설명합니다. 예를 들어 Employee 모델에서 관리자와 부하 직원 간에 관계를 만들 수 있습니다. 계산됨 모델에는 사용할 수 없습니다.

  • 보안 — 모델에서 레코드를 만들거나, 로드하거나, 저장하거나 삭제할 수 있는 사용자를 제어합니다. 예를 들면 Employee 모델을 제한하여 이 모델의 레코드를 직원만 볼 수 있도록 할 수 있습니다.

표시 필드

모델을 만들 때 기본 표시 필드를 선택할 수 있습니다. App Maker는 모델의 레코드를 참조할 때 기본 표시 필드를 사용합니다. 표시 필드는 일반적으로 레코드를 선택하는 위젯(예: 드롭다운)에 사용됩니다.

예를 들어 부서 이름과 위치가 포함된 부서 모델에서 부서 필드를 선택할 수 있습니다. 드롭다운 위젯의 데이터 소스를 이 모델로 설정하면 드롭다운 옵션이 부서 필드의 값이 됩니다.

표시 필드를 지정하지 않으면 App Maker에서 이름이 'id' 또는 'name'인 표시할 필드를 찾으려고 시도합니다. 모델에 이러한 이름이 하나라도 있는 필드가 없으면 App Maker는 모델의 첫 번째 문자열 필드를 사용합니다.

필드를 기본 표시 필드로 설정하려면 다음 안내를 따르세요.

  1. 모델을 클릭합니다.
  2. 필드 탭에서 표시 필드로 설정할 필드를 클릭합니다.
  3. 표시 필드로 설정을 클릭합니다.

표시 필드를 다른 필드로 변경하려면 필드를 열고 표시 필드로 설정을 클릭합니다. 하나의 필드만 표시 필드로 설정할 수 있습니다.

표시 필드를 다른 방식으로 설정하려면 위젯의 names 속성을 표시하려는 필드에 바인딩하세요.