2017-11-29 1 views
0

다음 오류가 발생했습니다 : 기존 기본 키 값 '96292'로 'TypeId'유형의 개체를 생성하려고 시도했습니다. 그리고 나는 이것 후에 추락했다.영역에서 객체 복제를 방지하는 가장 좋은 방법은 무엇입니까?

+0

'TypeID'를 사용하여 개체를 가져 와서 수정 한 후에 기본 키가 – Tj3n

+0

인 개체의 중복을 만들 수 없습니다. 동일한 기본 키 값을가집니다. 개체가 있으면 업데이트 중입니다. – EpicPandaForce

답변

0

유형이 Int이 아닌 기본 키 유형으로 String을 사용하고 각 객체에 대해 UUID를 사용하면 중복 된 키를 피할 수 있습니다. 또한

class AModel: Object { 
    @objc dynamic var id = UUID().uuidString 

    override static func primaryKey() -> String? { 
     return "id" 
    } 
} 

, 당신은 지능을 사용하려면, 단 하나의 객체가 너무 상황을 방지하기 위해 타임 스탬프 값을 사용할 수있는 초에 만들어집니다이 그것에 대해 당신이 확신하는 경우 :

class AModel: Object { 
    @objc dynamic var id = Date().timeIntervalSince1970 

    override static func primaryKey() -> String? { 
     return "id" 
    } 
} 

동의 함 @ Tj3n 및 @ EpicPandaForce의 의견을 가지고 님과 의견을 교환하십시오. 실제로 새로운 객체가 아닌 경우 업데이트하십시오.

관련 문제