問題タブ [nsexpression]
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.
objective-c - NSPredicateEditor & NSExpression - 表示が述語の値と異なることはありますか?
テンプレートが次の方法で生成された述語エディターがあります。
したがって、述語エディターを次のように入力すると、次のようになります。
生成された述語をログアウトすると、次のようになります。
Abc CONTAINS[cd] "abc" OR Def CONTAINS[cd] "def"
私が疑問に思っているのは、述語エディターのテンプレート表示を、生成された述語に設定された値とは異なるものにすることができるかどうかということです。
例: 出力述語に次のものが必要です。
Field1 CONTAINS[cd] "abc" OR Field2 CONTAINS[cd] "def"
エディターは引き続きフィールドとしてabc
とを表示def
しますが。これは可能ですか?
objective-c - sum: expression の引数として別の式を使用して、NSManagedObject から集計データをフェッチします。
式の引数としてsum:
式を使用することは可能ですか?
私はプロパティを持つエンティティ(NSManagedObject
クラス)を持っています.Drink
costPerDrink
numberOfDrinks
drinkingDate
期間内の総費用の合計 (numberOfDrinks
を掛けたもの)を取得したいと思います。単一のプロパティの合計 (期間内の合計など)costPerDrink
を取得するのに問題はありませんが、別の (乗算) 式で合計式を使用しようとすると、エラーが発生しました:numberOfDrinks
コードを参照してください:
totalCost
自動計算されたプロパティをDrink
エンティティに追加し、式sum:
なしでフェッチで使用することで特定の問題を解決できることを完全に理解していますmultiply:by:
が、質問は残っています-式を式の引数として使用することは可能sum:
ですか?
ios - NSExpression ベースの Core Data fetch が現在の値を取得しない (iOS 5、GCD)
私がやろうとしていること
以下のコードを使用して、バックエンド サーバー (parse.com) からアプリのコア データ ストアにデータ (過去の外国為替レート) をダウンロードしています。
アプリは、ローカルに保存されている最新の利用可能なデータをチェックし、サーバーから新しいデータのみをフェッチします。ローカルにまだデータが保存されていない場合は、サーバーからすべてのデータを取得します。
コードの設定方法は、100 個のオブジェクトのバッチでデータをフェッチし、コア データにオブジェクトを保存し、データが現在ローカルに保存されている新しい最新の日付を取得し (を使用してNSExpression
)、新しいデータがなくなるまで次のバッチをフェッチします。オブジェクトはサーバーに残されます ( objects.count = 0
)。
フェッチは遅いため、フェッチと Core Data の保存をバックグラウンド スレッドで実行することにしました (iOS 5 で提供される新しい Core Data マルチスレッド モデルを使用)。
バックエンド サーバーからのフェッチは正常に機能しますが、...
私の問題
NSExpression
これらのオブジェクトのみがディスク上に (物理的にはデータベースに) 保存されており、まだメモリ内にあり、すぐに保存されるオブジェクトは評価されないようです。したがって、フェッチはほとんどの場合、ディスク (メモリ) から「古い」値を取得します。
ただし、次のフェッチのコードを使用すると (noNSExpression
およびNSDictionary
as result 型を使用)、現在の正しい値が取得されます。
NSExpression
と辞書を fetch resultType として使用する以下のコードの何が問題になっていますか?
私の質問
NSExpression
ローカルで利用可能な最新の日付を検索する が最新の日付を返すことを確認するにはどうすればよいですか?
コード
ご協力ありがとうございました!
objective-c - Core Data で計算を実行するための連鎖式
初めまして:明けましておめでとうございます:-)
私がやろうとしていること
Core Data の 2 つの属性を分割し、これらの分割の平均を計算しようとしています。属性は、キー パス ( eur
、usd
、 などaud
) によって指定されます。
例: 次のデータ セットがあります。
2 つの属性、たとえば eur / usd を次の結果で分割します...
...次に、これらの数値の平均を計算します(0.5 + 0.54 + 0.4)/3 = 0.48
私のコード
これらの計算を Core Data で直接実行したいので、次の式とフェッチ リクエストを作成しました。
問題
ただし、アプリを実行すると、次のエラー メッセージでクラッシュします。
コードの何が問題になっていますか? 2 つの計算を連鎖させ、Core Data で直接実行するにはどうすればよいですか?
ありがとうございました!
objective-c - NSExpression 1/2
文字列を計算したいのですが、これは次のように実行しています。
問題は、calculationstringが1/2の場合、結果が0になることです。floatをdoubleとNSNumber、%fを%fと%@に変更しようとしましたが、常に0になります。何を変更する必要がありますか?
また、重要な場合、私はヨーロッパにいるので、この値のポイントの代わりにコンマを使用していますが、ポイントとして表示される%fでログを記録しているので、問題ではありません。情報のためだけに
ios - カウントと日付によるグループ化を使用したテーブルビューのコアデータの集計操作
エンティティ「Event」と「Date」タイプの属性「eventDate」を持つCoreDataデータベースがあります。タスクは、日付ごとにグループ化されたイベントを表示し、日付ごとのイベントの数(@ "count")を表示します。たとえば、eventDate(mm-dd-yyyy)データ:
テーブルビューの結果:
すべてのデータベースが大きくなる可能性があるため、すべてのデータベースをフェッチするのは好きではありません。そのため、すべてのオブジェクトをフェッチするのではなく、集約操作を使用します。コードはエラーなしで機能していますが、結果の配列は空です。私の推測では、問題は日付型属性とNSAttribute / attributeTypeを使用したグループ化ですが、機能させることができませんでした。イベントのカテゴリファイルのコードは次のとおりです。
}
objective-c - コアデータ-配列の正確な要素を使用してデータをフィルタリングするオブジェクトを取得します
、、の3つのエンティティがobject
ありobject_tag
、tag
タグの配列に一致するオブジェクトだけをIDで取得する必要がありますが、タグだけでなく、配列内のすべてのタグに正確に一致します。配列に3つのタグがある場合は、これらの3つのタグを持つすべてのオブジェクトを返します。
エンティティは次のようなものです。
述語や式を使用して、どうすれば欲しいものを手に入れることができますか?私はさまざまな方法を試しましたが、取得したのは、配列内の任意のタグを含むオブジェクトだけでしたが、一度にすべてのタグを含むわけではありません。
編集1:
申し訳ありませんが、私は関係について何かを明確にするのを忘れました。エンティティobject
とは、オブジェクトとタグのペアを含むtag
中間エンティティを指します。object_tag
core-data - groupby と count の組み合わせに対する NSFetchRequest
私は Core Data を初めて使用するので、いくつかのフィールドとそのグループ内の別のフィールドの数で結果をグループ化する単純なフェッチ要求を書きたいと考えています。たとえば、製品テーブルがあり、グループ化されたすべての製品を日付と製品の数で取得したい場合、SQL の単純なクエリは次のようになります。