問題タブ [nsmanagedobject]
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.
iphone - ユーザーがボタンを押すまで、特定の NSManagedObject の永続性を無効にしますか?
ユーザーがビューで編集できる属性を持つ NSManagedObject があります。ビューにはオブジェクトからの値が取り込まれ、ユーザーは値を編集でき、値はオブジェクトに書き戻されます。ユーザーが保存またはキャンセル ボタンを明示的にタップして、変更をコミットまたは元に戻すようにしたい。
問題は、ビューが他のことが起こっている UITabbarController にあることです。ユーザーは、[NSManagedObjectContext save] または [NSManagedObjectContext undo] が呼び出される別のタブで操作を実行する場合があります。これは、ユーザーが保存するかキャンセルするかを決定する前に、NSManagedObject (最初に言及したタブから)に影響します。
これを回避する方法はありますか?ユーザーがボタンをタップするまで、NSManagedObject の永続性を一時的に無効にすることはできますか?
iphone - NSUndoManager undo がコア データで機能しない
ユーザーがエントリを追加できる iPhone アプリケーションを作成しようとしています。彼が新しいエントリを押すと、いくつかの情報を求めるボックスがポップアップします。次に、[キャンセル] または [保存] を押してデータを破棄するか、ディスクに保存します。
保存には、かなりうまく機能する Core Data フレームワークを使用しています。ただし、「キャンセル」ボタンが機能しません。情報を求めるウィンドウが表示されたら、マネージド オブジェクト コンテキスト (MOC) に新しいオブジェクトを作成します。次に、ユーザーがキャンセルを押すと、MOC に属する NSUndoManager を使用しようとします。
また、ネストされたグループがある可能性があるため、ネストされた元に戻すグループを使用して実行したいと思います。
これをテストするために、簡単なアプリケーションを作成しました。アプリケーションは、Core Data が有効になっている単なる「ウィンドウ ベースのアプリケーション」テンプレートです。Core Data モデルの場合、整数属性 "x" を持つ "Entity" という単一のエンティティを作成します。次に、applicationDidFinishLaunching 内に、次のコードを追加します。
考え方は単純です。新しい Entity オブジェクトを挿入して元に戻し、MOC 内のすべての Entity オブジェクトを取得して出力してみてください。すべてが正常に機能した場合、最後にオブジェクトは存在しないはずです。
ただし、次の出力が得られます。
ご覧のとおり、オブジェクトの作成を元に戻そうとすると、MOC にオブジェクトが存在します。私が間違っていることに関する提案はありますか?
objective-c - CoreData と NSXMLParser
Stackoverflow の皆さん、こんにちは。
NSURLConnection からデータを取得した後、NSXMLParser を使用してネットワークの XML ファイルを解析しています。XML には多くの「項目」があり、各項目には 1 つのカテゴリが含まれています。CoreData モジュールには、1 つのカテゴリとの関係を持つ Item エンティティがあります。
XML ファイルを解析し、"Item" 要素でメッセージ parser:didStartElement:... をヒットしているときに、Item の NSEntityDescription を作成します。次に、パーサーはメッセージ parser:didStartElement:... で再びカテゴリ項目を受け取り、カテゴリの NSEntityDescription を作成します。
XML:
したがって、CurrentItem の作成が完了していない間に、最初に currentCategory に対してコンテキスト save: 呼び出しが呼び出されます。
iphone - コア データ: 詳細ビューからのオブジェクトの編集
Core Data を使い始めたばかりで、iPhone Core Data プロジェクトをマスター/詳細ビュー システムにセットアップしています。マスター ビューには項目が含まれ、詳細ビューでは選択した項目のプロパティを編集できます。
編集を実装するための最良のオプションを探しています。NSManagedObjectContext を詳細ビュー コントローラーに渡して、変更を加えて変更を保存しますか?それとも機能しますか? これを行う方法を示すコード例はありますか?
iphone - コア データ自動更新クエリ
コア データと、エンティティが自動的に更新される場合、その方法について質問があります。
基本的に、データ X をフェッチするとします。X は Y と逆対多の関係にあります。次に、X の属性を更新するためにメソッド get が呼び出されます。データを再度フェッチする必要がありますか? または、X は更新されたデータを自動的に取得しますか?
これが不可能な場合は、問題ありません。数日前に投稿を見たので、私はちょうど興味がありました。詳細は覚えていませんが、NSManagedObjects にデータを自動的に更新/更新させる方法について話していたと思います。これが本当なのか、設定する必要があるのか、それとも不可能なのかを知りたいと思っていました。
私は実際にデータを再取得してテーブルを更新しています。これは私には問題ありませんが、繰り返しますが、私が読んだことが真実なのか、それとも投稿を誤解したのかが気になります.
ありがとう。
iphone - iPhones SDK:コアデータを使用してリレーションシッププロパティオブジェクトを設定しますか?
アプリでコアデータを使用しています。関連する2つのエンティティがあります:EntityAとEntityB。EntityAには、EntityBとの「関係」タイプのプロパティがあります。さらに、これらのエンティティは両方とも定義済みのクラスです(デフォルトのNSManagedObjectではありません)。次のように、データに新しいオブジェクトを挿入しています。
問題は、entityB.nameがnullであるということです。値を割り当てた直後にNSLog()ステートメントを追加しても、nullになります。EntityBがEntityAのプロパティである場合、EntityBの「名前」プロパティを設定する適切な方法は何ですか?
iphone - NSManagedObject サブクラスへの格納された参照を取得する方法は?
Tour という名前の NSManagedObject サブクラスがあります。このコードを使用して参照を保存しました:
今、私はそれを取り戻したいと思っています。私は使用してみました:
しかし、「互換性のないObjective-cタイプです。「struct NSManagedObject *」を初期化しています。「struct Tour *」が必要です
さらに、実行すると、「キャッチされていない例外 'NSObjectInaccessibleException' が原因でアプリを終了しています。理由: 'CoreData は '0x5001eb0 の障害を実行できませんでした。
どうすればこれを解決できますか?
iphone - 結果をフィルタリングするコアデータNSPredicate
bIDとpIDを含むNSManagedObjectがあります。NSManagedObjectsのセット内で、サブセットのみを返したいのですが、正しいNSPredicateまたはコアデータから必要なものを取得する方法を見つけるのに苦労しています。
これが私の完全なリストです:
入札pid410
42 41
43
0
44 0
47 41
48 0
49 0
50 43
上記には親子関係があります。
ルール:
レコードのPID=0の場合、そのレコードが親レコードであることを意味します。レコードのPID!= 0の場合、そのレコードのPIDはその親レコードのBIDを参照します。
例:
1)BID=41は親レコードです。なんで?レコードBID=42およびレコードBID=47のPIDは41であるため、これらはそのPIDレコードの子です。
2)BID=42にはBID=41の親レコードがあり
ます。3)BID=43は親レコードです。
4)BID=44は親レコードです。
5)BID = 47には、PID = 41であるため、BID = 41の親レコードがあります。上記の#1を参照してください。
6)BID=48は親レコードです。
7)BID=49は親レコードです。
8)BID = 50は子レコードであり、その親レコードのBID=43です。
パターンを見ますか?
さて、基本的にそれから、私は次の行だけをフェッチしたいです:
入札pid440
47 41
48 0
49
0
50 43
BID = 41、BID = 48、BID = 49は、BIDと等しいPIDを持つレコードがないため、すべて返される必要があります。
BID = 47は、PID = 41の最新の子である
ため、返される必要があります。BID= 50は、PID = 43の最新の子であるため、返される必要があります。
これがそれをもっと説明するのに役立つことを願っています。
iphone - サブグラフ内のすべての変更を追跡/監視するにはどうすればよいですか?
NSManagedObjectContextがあり、NSManagedObjectsのサブクラスがいくつかあり、一部は他のコンテナになっています。私がやりたいのは、最上位のオブジェクトを監視して、そのプロパティ、関連付け、またはオブジェクトに含まれるオブジェクトのプロパティ/関連付けの変更が通知されるようにすることです。
コンテキストの「hasChanges」を使用しても、十分な粒度が得られません。オブジェクトの「isUpdated」メソッドは、指定されたオブジェクトにのみ適用されます(その関連付けには何も適用されません)。サブグラフに限定されたコンテキストで変化を観察できる便利な(おそらくKVOベースの)ものはありますか?
iphone - NSManagedObjectへの参照の存在を確認するにはどうすればよいですか?
このサイトhttp://cocoawithlove.com/2008/08/safely-fetching-nsmanagedobject-by-uri.htmlにある例を使用して、NSManagedObjectへの参照を正常に保存および取得しました。
問題は、削除されたNSManagedObjectを取得しようとするとアプリがクラッシュすることです。
オブジェクトに対してisFaultメソッドを試しましたが、オブジェクトがそこにある場合でも、常にnoを返します。
これが私がそれを取得するために使用する私のコードです: