Realm 파일에서 객체 수정
이 페이지의 내용
개요
Realm Studio에서는 Realm 파일의 객체를 보고 수정할 수 있는 기능을 제공합니다. 다음을 수행할 수 있습니다.
CSV 에서 데이터 가져오기
새 객체 만들기
기존 객체 수정 및 삭제
그런 다음 데이터를 JSON 또는 Realm 파일로 저장하고 클라이언트 앱 또는 프로덕션 데이터베이스로 가져올 수 있습니다.
CSV 에서 가져오기
참고
데이터를 가져올 때 새 클래스를 사용하려면 가져오기를 시작하기 전에 클래스를 생성해야 합니다.
객체 생성
객체 관계 고려
새 객체 를 만들 때는 객체 간의 관계에 대해 생각합니다. 예를 예시 할 일 앱 에는 카테고리와 작업이 있을 수 있습니다. 범주는 작업과 대다 관계 를 갖습니다. 하나의 범주에 여러 작업이 있을 수 있습니다. 작업은 범주와 역의 관계 를 갖습니다.
Realm에서 대다 관계는 두 객체를 연결하는 list
속성으로 표시됩니다. 할 일 앱의 예에서 Category
클래스에는 모든 관련 Task
객체가 값인 list
속성이 있습니다.
Realm Studio UI에서는 Category
클래스를 선택합니다. 작업을 추가하려는 카테고리의 [list-of-task]
속성을 클릭합니다(예: "Work").
작업 범주와 관계 가 있는 모든 작업 객체가 표시됩니다. 작업 목록 내에서 새 작업 객체 를 생성하면 Realm Studio 는 작업 상위 카테고리와의 관계 설정합니다.
여기에서 'Review PR 1013 '에 대한 새 작업 객체를 만들 수 있습니다. 새 작업은 역관계를 통해 "작업" 범주에 연결됩니다.
Task
클래스를 직접 선택하면 새 작업 객체 를 만들 수 있습니다. 그러나 해당 작업 객체 는 상위 범주와 관계 갖지 않습니다. 그런 다음고아 작업 객체 를 속한 범주에 수동으로 추가해야 합니다.
객체 만들기
새 객체 만들기
새 객체를 만들 위치를 결정한 후에는 두 가지 방법으로 이 작업을 수행할 수 있습니다.
앱의 오른쪽 상단에 있는 Create {Class name} 버튼을 클릭합니다.
메인 창의 아무 곳이나 마우스 오른쪽 버튼으로 클릭(또는 컨트롤 클릭)하여 상황에 맞는 메뉴를 불러오고 다음을 선택합니다. Create new {Class name}
두 옵션 모두 객체 의 속성을 설정하다 수 있는 대화 상자가 열립니다. 필수 속성을 지정했으면 Create 버튼을 누릅니다.
연결 속성 을 통해 상위 객체 와 연결되지 않은 고아 객체 를 만드는 경우 연결된 객체 에 해당 객체를 수동으로 추가해야 합니다. 참조: 객체 수정.
객체 수정
Realm Studio에서 Realm 객체를 수정할 수 있는 방법에는 몇 가지가 있습니다.
필드 값 변경
객체 관계 변경
필드 값 변경
객체의 필드 값을 수동으로 변경할 수 있습니다.
객체의 필드를 클릭합니다.
다른 값 입력
Realm Studio는 허용되는 부울 옵션 목록( Use "true", "false", "0", or "1")을 제공하거나 날짜를 유효한 날짜/시간으로 자동 변환하는 등 간단한 유형 유효성 검사를 제공합니다. 그러나 이 유효성 검사는 예기치 않은 동작을 초래할 수 있습니다. 예를 들어 int
필드에 '123abc'를 입력하면 사용자 피드백이나 오류를 제공하지 않고 숫자가 아닌 문자가 삭제됩니다. 따라서 필드 값에 입력하는 데이터가 올바른 유형인지 확인하는 것은 사용자의 몫입니다.
객체의 관계 변경
Realm Studio 를 사용하여 객체와 다른 객체와의 관계 를 변경할 수 있습니다.
새 객체 관계 를 추가하려면 다음을 수행합니다.
관계를 정의하는 속성을 클릭합니다.
기본 창 아무 곳이나 마우스 오른쪽 버튼으로 클릭(또는 Control-클릭)하고 다음을 선택합니다. Add existing {linked class name}
연결하려는 객체를 선택하고 Select 버튼을 누릅니다.
중요
객체 관계 추가해도 기존 객체 관계 는 제거 되지 않습니다. 객체 관계 를 변경하려는 경우; 예를 예시, 한 범주에서 다른 범주로 작업 을 이동합니다. 작업 을 이전 범주에 연결한 관계 도 제거 해야 합니다.
객체 관계 를 제거 하려면 다음을 수행합니다.
관계 를 정의하는 속성 을 클릭합니다.
관계를 제거하려는 객체를 마우스 오른쪽 버튼으로 클릭(또는 Control-클릭)하고 관계 유형에 따라 Remove selected row from the list 또는 Delete selected object 를 선택합니다.
조치 을 확인하는 대화상자가 표시됩니다. 버튼을 눌러 객체 제거 또는 삭제 를 확인합니다.
객체 삭제
영역에서 객체를 삭제하려면 다음을 수행합니다.
삭제하려는 객체를 마우스 오른쪽 버튼으로 클릭(또는 Control-클릭)하고 Delete selected object 을(를) 선택합니다.
조치 을 확인하는 대화상자가 표시됩니다. Delete selected object 버튼을 눌러 확인합니다.
팁
Delete selected object 옵션이 표시되지 않는 경우 연결 관계 목록 보기에서 옵션이 표시되고 있을 수 있습니다. 객체가 저장된 클래스로 직접 Go 합니다.
객체가 저장된 클래스에 있는데도 Delete selected objects 옵션이 표시되지 않는 경우 다른 객체를 선택했기 때문일 수 있습니다. 삭제하려는 객체를 클릭하여 선택한 다음 마우스 오른쪽 버튼을 클릭(또는 Control-클릭)하여 삭제 옵션을 표시합니다.
데이터 저장
영역 객체는 라이브 객체 이므로 영역 파일 을 변경하고 클라이언트 앱 에 실시간으로 반영된 것을 확인할 수 있습니다. Realm Studio 는 데이터로 다른 작업을 수행하려는 경우 몇 가지 저장 옵션을 제공합니다. 파일 을 저장하려면 다음 단계를 따르세요.
File > Save data 로 Go 하여 JSON 또는 Local Realm를 선택합니다.
파일을 저장할 파일 이름과 대상을 선택합니다.
Save 버튼을 누릅니다.
JSON 파일 사용
데이터를 JSON으로 저장한 경우 앱으로 다시 가져올 수 있습니다. 선호하는 방법을 사용하여 JSON을 앱으로 가져옵니다.
중요
'플랫화된' 파일
Realm Studio 에서 JSON 파일 로 내보낼 때 플랫 패키지. 다른 애플리케이션 에서 파일 을 열려면 Flatted.parse()
를 사용해야 합니다.
Realm 파일 사용
데이터를 영역 파일로 저장 하고 스키마를 수정 하지 않은 경우 해당 영역 파일을 클라이언트 앱의 기존 영역 파일을 직접 대체하는 것으로 사용할 수 있습니다. 파일 시스템의 기존 Realm 파일을 새 Realm 파일로 교체하기만 하면 됩니다.
또는 Realm의 복사본을 저장하고 복사본을 연 다음 복사본에 대한 스키마를 변경할 수 있습니다. 이렇게 하면 원본 Realm 파일을 손상시키지 않으면서 스키마를 반복할 수 있습니다. 그러면 마이그레이션을 수행하지 않고도 클라이언트 앱에서 기존 Realm 파일을 계속 사용할 수 있습니다. 여유 시간에 두 번째 Realm 파일을 사용하여 새 스키마에 대한 마이그레이션을 테스트할 수 있습니다.