問題タブ [nsmanagedobjectmodel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
277 参照

ios - コードでの NSManagedObject モデルの使用

User モデル クラス (XCode と Swift で生成) があります。

そしてそれは拡張子です:

CoreData からデータを保存/取得できます。 しかし、このクラスを CoreData なしでオブジェクト管理に使用できますか? または、このために他のクラス/構造体を作成する必要がありますか?

たとえば、(ObjectContext なしで) User オブジェクトを作成し、その属性を設定して、いくつかの関数でプロパティとして送信しますか? たぶん、クラス User (のようなstruct {var firstNameData, secondNameData,...}) でいくつかの構造体を作成し、それをコードで使用できますか?

0 投票する
2 に答える
412 参照

core-data - 複数のモデルから NSManagedObjectModel を構築する

複数の NSManagedObjectModel をマージしたい理由はいくつかあります。Web を検索すると、すべての応答は、それは不可能であるか、1 つ以上の関係を共有する 2 つの無関係なエンティティに対してのみ可能であるというものです。たとえば、これこのリンクを参照してください。

ただし、エンティティが(親子のように)関連している場合や、属性が複数のモデルに分散している場合でも、もう少し作業を行うと、NSManagedObjectModelsをマージすることが可能です(私は思います)。

ただし、Xcode モデル エディタではすぐには表示されず、すぐに使用できるトランジションは (おそらく) 機能しません。

以下の回答では、コアデータに関する私の観察と、複数のモデルのマージに関する私のコードを示しています。バグを見つけた場合、または改善のための提案がある場合は、ここに返信してください。

0 投票する
1 に答える
26 参照

ios - 「Item-ItemDetails」を CoreData に格納する最良の方法

iOS アプリの 99% と同様に、私のアプリには長いアイテム リストを含むメイン画面があり、ユーザーがいずれかをタップすると、アイテムの詳細が表示されます。かなり簡単です。たとえば、最初の画面をレンダリングするには、titleimagesが必要です。2 つ目は、大きな htmlです。すべてのデータは永続的に に保存されCoreDataます。

UICollectionViewリスト ( ) をできるだけ高速にしたい。そのため、ユーザーが詳細画面に移動するまで、html-s を読み込めません。

どのように実装できますか?NSManagedObjectと の 2 つのクラスを作成する必要がItemありItemDetailsますか? CoreDataすべてを遅延ロードしますか?

0 投票する
2 に答える
129 参照

ios - コア データを介してデータをフェッチしている間、既存の行を自動的に再挿入します

私はコアデータが初めてです。オブジェクト指向の方法で実装しようとしています。サンプル プロジェクトとして、コア データを介して sqlite データベースからのデータを表示するビュー コントローラーを作成し、データは別のビュー コントローラーによって入力されます。ただし、モデル クラス「ContextHandler」を介してデータのフェッチと挿入を処理したかったので、別のモデル クラス「Device」を作成しました。これは のサブクラスですNSManagedObject

ただし、データを取得するときは、以前に入力したデータを再入力しています。

これが私のストーリーボードです- ここに画像の説明を入力

私のエンティティ モデル クラスの名前は「Device」です。

Device.h -

および Device.m -

次のクラスを使用して、デバイス オブジェクトを挿入およびフェッチしています。

挿入方法は、

そして取得方法は -

問題は、デバイス オブジェクトを初期化するときに、オブジェクトをデータベースに再度追加することになります。

この問題を解決する方法。データを再度挿入せずに Device クラスを初期化する方法。

できなかった -

それをすると、アプリがクラッシュします。誰でもここで私を助けてくれませんか。

0 投票する
2 に答える
4914 参照

ios - コアデータ。index と indexed の違いは何ですか?

SQL でサポートされた CoreData インスタンスへのクエリを高速化しようとしています (日付で並べ替えられたレコードを表示します)。インデックス作成がクエリ時間の短縮に役立つことは知っていますが、次の違いは何ですか。

次に示すように、属性が属するエンティティを強調表示してから、コンマ区切りの属性リストをインデックス フィールドに追加します。

ここに画像の説明を入力

または、属性を強調表示してから、次のようにインデックス付きのボックスをチェックします。

ここに画像の説明を入力

0 投票する
1 に答える
197 参照

ios - ストア メタデータと管理オブジェクト モデル間の互換性の基準は何ですか?

私のアプリはCoreDataフレームワークを使用しており、ストア メタデータとマネージド オブジェクト モデルの間の互換性を確認したいと考えています。私はそれを標準的な方法で行います:

を返しますNO。ただし、メタデータ内のエンティティはモデル内のものと同じです。エンティティの数が同じで、各エンティティの名前が同じです。ただし、このモデルを使用してストアが作成されてからモデルが実際に変更されたため、1 つのエンティティでいくつかの属性を削除しました。そして、モデルがストアのメタデータと互換性がなくなるのに十分かどうか疑問に思っています. 公式ドキュメントを調べたところ、次のように書かれています。

そして問題は (私が Apple のドキュメントを読んでいるときによくあることですが)、このフレーズが正確に何を意味するのかよくわからないことです。それで、誰かがそのトピックについてもっと説明できますか? CoreDataメタデータのエンティティがモデルのエンティティと同じである場合、モデルがメタデータと互換性があるかどうかをどのように判断しますか?