問題タブ [nspredicate]

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 投票する
6 に答える
105635 参照

objective-c - NSPredicateを使用して、NSDictionaryキーに基づいてNSArrayをフィルタリングします

私は辞書の配列を持っています。

キーに基づいて配列をフィルタリングしたい。

私はこれを試しました:

これは機能しません。結果が得られません。私は何か間違ったことをしていると思います。「SPORT」がivarだった場合の方法だと思います。鍵だと違うと思います。

しかし、私は例を見つけることができませんでした。

ありがとう


アップデート

検索している文字列を引用符で囲みます。

それでも動作しません。


アップデート2

解決しました。私は実際に一重引用符を削除する必要がありましたが、これはガイドの説明に反しているようです。

私の本当の問題は、ネストされた配列があり、実際に辞書を評価していなかったことです。骨頭が動く。

0 投票する
4 に答える
33783 参照

iphone - Core Data、NSPredicate、対多キー

Task エンティティにオプションの多対多のリレーションシップ excludeOccurrences が含まれる Core Data モデルがあります。excludeOccurrences のプロパティの 1 つは start で、これは NSDate オブジェクトです。ExcludedOccurrence エンティティには、Task エンティティと逆の必須の対 1 関係があります。

指定した日のタスクを取得するには、指定した日が ExcludedOccurrence エンティティの開始プロパティとして表示されないようにする必要があります。したがって、私が使用しようとしているサブ述語の1つは

ここで、today は、日、月、年のコンポーネントのみを含む今日の NSDate オブジェクトです。除外されたすべての開始プロパティには、日、月、および年のコンポーネントのみが含まれます。

これで問題ないはずですが、少なくとも Core Data と NSPredicate のドキュメントを読むと、次のエラー メッセージが表示されます。

キャッチされていない例外 'NSInvalidArgumentException' が原因でアプリを終了しています。理由: 'サポートされていない述語

同等の述語を使用する場合

例外はスローされませんが、コードは期待どおりに機能しません。除外すべきではない今日のオカレンスが除外されます。

また、excludedOccurrences == nil の場合をテストする方法もわかりません: 次の述語

実行時に例外を引き起こす

対多キーはここでは許可されていません

ただし、excludedOccurrences 関係はオプションであるため、nil かどうかもテストする必要があります。

どうすればこれに対処できますか? 前もって感謝します。

0 投票する
3 に答える
7812 参照

objective-c - 条件が満たされない場合に true を返す NSPredicate を作成する

私は現在、次のコードを持っています

これは、「-」を含む要素を持つ配列を返します。これの逆を行いたいので、「-」を含まないすべての要素が返されます。

これは可能ですか?

さまざまな場所で NOT キーワードを使用してみましたが、役に立ちませんでした。(Appleのドキュメントに基づいて、とにかくうまくいくとは思いませんでした)。

これをさらに進めるために、配列の要素にしたくない文字の配列を述語に提供することは可能ですか? (配列は文字列の負荷です)。

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

iphone - Core Data の 1 対多の関係の正しい NSPredicate 形式

1 対多の関係を持つマネージド オブジェクト モデル A と B があります。

この特定のタスクでは、「文字列」に一致するプロパティを持つ B との関係を持つすべての A オブジェクトを取得したいと考えています。

を試し@"ALL bObjects.bProperty MATCHES 'string'"ましたが、objc_exception_throw が発生しました。

問題に見えるのは ?

誰でも正しい述語形式についてアドバイスできますか?

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

cocoa-touch - NSPredicate に結合を追加する方法

NSPredicate複数の条件を一致させるためにどのように使用しますか?

質問がありますSelect * from Entity where name = "Sony" and type ="cd";
どうすればこれを提出できandますNSPredicateか?

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

objective-c - NSPredicateEditor を使用して NSPredicate を編集する

NSPredicateEditor (NSRuleEditor のサブクラス) を使用して、NSPredicate を簡単に作成できます。私が知りたいのはこれです:

既存の NSPredicate (エディターによって作成されたもの) を取得し、エディターに再読み込みして変更できるようにするにはどうすればよいですか?

編集: setObjectValue: を使用するという @John の提案を試しましたが、うまくいきませんでした。私のセットアップをもう少し説明しましょう:

私はドキュメントベースのココア アプリを持っており、ドキュメント ウィンドウには NSPredicateEditor しかありません。dataOfType:error:メソッドには、次のものがあります。

readFromData:ofType:error:メソッドには、次のものがあります。

述語が正しくアーカイブおよびアンアーカイブされることを確認しましたが、保存された述語を開いた後、述語が predicateEditor に読み込まれません。(はい、predicateEditor は IBOutlet として接続されています)

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

iphone - NSPredicatesとdoubleto-n関係

Albumというコアデータエンティティがあります。アルバムにはSongエンティティ(songsと呼ばれる)との関係があり、各Songには任意の数のTagエンティティ(tagsプロパティ内)があり、タグには名前があります。次に、アルバム内のいずれかの曲にタグが含まれているかどうかを確認します。単一のNSPredicateを使用します。

頭に浮かんだアイデアは次のとおりです。

ただし、これにより実行時にエラーが発生します(「フォーマット文字列を解析できません」)。いろいろなバリエーションを試してみましたが、うまくいきませんでした。

これを行う方法はありますか?

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

iphone - NSFetchedResultsController と NSFetchRequests の構築

NSFetchedResultsController のインスタンスを使用せずに、iPhone アプリの Core Data をセットアップしました。

これを行うために、すべてのコア データ リクエストと NSFetchRequests/NSPredicates の構築をカプセル化するモデル クラスを作成しました。

これにより、すべての Core Data 固有のコードが UITableViewController から除外されました。

ここで、NSFetchedResultsController を追加して、セクション化された UITableView を簡単に設定できるようにします。

私の問題は次のとおりです。すべての例で、NSFetchedResultsController インスタンスが UITableViewController の ivar であることを確認しました。これにより、UITableViewController 内に構築されたすべての NSFetchedResults ステートメントが生成されます。

これはUITableViewControllerを混乱させ、別の責任を追加しているように感じます。

これにどのように対処しますか?

NSFetchedResultsController を使用すると、オブジェクト グラフはどのように見えますか?

NSPredicates はどこで作成しますか?

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

objective-c - filterUsingPredicateエラーからのNSMutableArray

次のコードでNSMutableArray(MessageArray)のサブセットを返そうとしています。MessageArrayにはNSDictionaryが含まれており、キーの1つはFriendStatusです。DUH構文の問題であることがわかっている奇妙なエラーが発生します。「エラー。void値は無視されるべきではない」。

}