2016-06-19 4 views
18

저는 스위프트 3 및 Xcode 8 베타로 코어 데이터를 사용해보기 시작했습니다. 내가 핵심 데이터 모델에서 NSManagedObject 하위 클래스를 생성하고 편집 메뉴에서 NSManagedObject 하위 클래스 ... 옵션을 만들려고 할 때, 엑스 코드 8 베타 생성 다음과 같은 내용으로 그들 중 하나가 _COREDATA_DATAMODELNAME_ + CoreDataModel.swift입니다 세 개의 파일 :NSManagedObject를 Swift 3 및 Xcode 8로 서브 클래 싱하기

import Foundation 
import CoreData 

___COREDATA_DATAMODEL_MANAGEDOBJECTCLASSES_IMPLEMENTATIONS___ 

Expressions are not allowed at the top level. 
Use of unresolved identifier '___COREDATA_DATAMODEL_MANAGEDOBJECTCLASSES_IMPLEMENTATIONS___' 

이 anyones에 같은 문제에 직면했습니다 : 또한이 파일의 내용은이 경고를 보여줍니다? 이 새 파일의 의미는 무엇입니까?

감사

+0

Xcode 8 베타에서 사용자 정의 'NSManagedObject' 하위 클래스를 만들 수 없습니다. 나는 같은 문제가있다. –

+0

다음으로 objc에 대한 거의 모든 문제가 해결되었습니다. http://stackoverflow.com/a/40788081/2246798 – souvickcse

답변

44

그것은 아마 데이터 모델 파일의 엔티티 관리자에서 제어 할 수있는 새로운 자동 서브 클래스 생성,과 (베타) 충돌합니다. documentation (What's New In Core Data)

엑스 코드 자동 생성 서브

엑스 코드에서

해주기 NSManagedObject 서브 모델링 도구 의 자동 생성을 지원한다. 엔티티 관리자의 :

  • 수동/없음 기본 및 이전 동작하지 않습니다; 이 경우 은 자신의 하위 클래스를 구현하거나 NSManagedObject을 사용해야합니다.
  • 범주/확장자ClassName+CoreDataGeneratedProperties과 같은 파일에 클래스 확장을 생성합니다. 메인 클래스를 선언/구현해야합니다 (Obj-C의 경우 확장명이 ClassName.h 인 을 가져올 수있는 헤더를 통해). -
  • 클래스 정의은 이라는 ClassName+CoreDataClass과 같은 하위 클래스 파일과 카테고리/확장자에 대해 생성 된 파일을 생성합니다.

생성 된 파일은 모델 저장 후 첫 번째 빌드에서 DerivedData 및 으로 다시 작성됩니다. 또한 Xcode로 색인 된 이기 때문에 참조로 명령을 클릭하고 을 파일 이름으로 빨리 열 수 있습니다.

+0

감사합니다. Xcode 8의 새로운 릴리스를 기다리는 동안이 세 가지 옵션을 시도해 보겠습니다. – RFG

+5

참고 : Swift에서 생성하려는 경우 파일 검사기에서 코딘의 언어를 선택할 수도 있습니다. 웬일인지 스위프트 프로젝트를 만들었지 만 목표는 C였습니다 ... 다시 GM 프로젝트 마이 그 레이션에 대한 베타입니다. –

+0

엔티티 관리자는 무엇입니까? - 대답을 찾았습니다. 엔티티를 편집하는 곳입니다 .xcdatamodel 파일 – Ronen

0

나는이 개발자 베타 Xcode 8과 비슷한 문제가 있습니다. 데이터 모델을 떠나기 전에 또는 NSManagedObject 하위 클래스를 생성하기 전에 Command + S (변경 사항 저장)가 해결되었습니다. 이유는 모르지만 내 경우에는 자동 저장이 가끔 작동하지 않고 일부 오류가 발생합니다.

0

위의 인용 된 .swift 파일에 문제가 발생하여 ___ COREDATA ... 행에 주석을 달아서 오류가 발생했습니다. 내가 성취해야 할 것이 무엇인지 확신 할 수 없다.

저는 XCODE 8이 CoreData 엔티티에 추가 된 새로운 필드를 잊어 버리고 CoreData 모델 코드 생성 대상을 Objective C로 반복적으로 리셋하여 경향이있는 것으로 나타났습니다.파일을 다시 생성 할 때 신속한 파일 대신 m 개의 파일을 만듭니다. 필자가 본 대부분의 문제는 CoreData와 관련되어 있지만 지금까지는 실행 가능했습니다.

그 외에도 XCODE 8은 놀랍게도 25 개의 데이터 항목과 30 개 이상의보기 컨트롤러가있는 앱을 사용하여 놀랍도록 탄탄했습니다.

관련 문제