6

对,只是清理这个问题,希望找到答案。

我一直在关注这个博客来让我的导入工作。

http://www.cimgf.com/2012/05/29/importing-data-made-easy/

当 JSON 在表单中时,我设法使导入工作完美......

[
    {
        Name: "John Smith",
        Id: 123,
        Company:
        {
            Name: "Apple",
            Id: 1
        }
    }
]

即当 JSON 包含实际对象时。

导入将找到对象并更新现有对象,而不是创建新对象。

但是,我拥有的一些 JSON 格式...

[
    {
        Name: "John Smith",
        Id: 123,
        CompanyID: 1
    }
]

无论我做什么,它都会产生重复。

请有人告诉我 Magical Record 的用户信息设置是为了让它工作。

4

1 回答 1

6

感谢您的提问,虽然我已经使用了一段时间,但我能够成功使用 MagicalRecord 的导入功能。我能够为您的问题找到解决方案。

我猜 MagicalRecord 约定将 personID 用于 Person,将 companyID 用于 Company。由于它在我们的控制之下,因此需要注意。如果我错了,请纠正我。从实体的属性中删除下划线后,它就不再崩溃了。

我已经对下面提到的解决方案进行了全面测试,请参阅我使用的演示项目代码。因此,请随时提出问题。

Company
-------------
companyID (unique) //Removed underscore from the property
companyName
-------------
persons

Person
-------------
personID (unique) //Removed underscore from the property
firstName
lastName
-------------
company

对于这种格式:

{
        Id: 1,
        FirstName: "John",
        LastName: "Smith"
        Company :
        {
            Id: 123
        }
    }
}

以下应为公司关系的 userInfo 中提供的人

mappedKeyName : Company(在 JSON 的 key 中使用)

relatedByAttribute : companyID(公司实体中的唯一属性名称)

对于这个模型:

{
    Id: 1,
    FirstName: "John",
    LastName: "Smith"
    CompanyId: 123
}

mappedKeyName : CompanyId(在 JSON 的 key 中使用)

relatedByAttribute : companyID(公司实体中的唯一属性名称)

于 2013-03-23T20:53:02.130 回答