菜鸟教程小白 发表于 2022-12-12 20:51:09

ios - 仅使用一个托管对象预填充核心数据


                                            <p><p>我只需要使用一个托管对象预填充我的核心数据库。</p>

<p>目前我正在检查 AppDelegate 是否是应用程序运行的第一次,然后添加对象,如下所示:</p>

<pre><code>NSUserDefaults *defaults = ;

BOOL firstTime = ;

if (firstTime) {
    ;

    ;
    ;
}
</code></pre>

<p><code>insertManagedObject</code> 方法检查 managedObject 是否已经在数据库中。</p>

<p>它工作正常,但我担心在未来的应用程序更新中这可能会给我带来一些麻烦,主要是如果我更改我的数据模型并添加一个新的数据模型版本。</p>

<p>最好的方法是什么?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><blockquote>
<p>Why don&#39;t you execute a fetch request a see if the store already
contains that managed object? e.g setting a specific identifier for
that managed object...</p>
</blockquote>

<p>根据我的评论,您可以针对您的实体设置一个获取请求,并查看商店是否已经有一个实例。</p>

<p>这很容易实现。</p>

<p>如果您需要查询特定对象,您可以为实体设置属性标识符(即 guid)并使用谓词查看具有特定 guid 的对象是否存在。</p>

<p>如果你分享一些其他细节,我可以给你其他建议......</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 仅使用一个托管对象预填充核心数据,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/22663146/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/22663146/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 仅使用一个托管对象预填充核心数据