2

Android アプリで Sugar ORM を使用しています。私のデータはサーバーから取得されますが、一部のモデルには、デバイス側で入力される追加のフィールドがあります。データを更新すると、デバイスに入力されたフィールドが null 値で上書きされます。

現在、そのオブジェクトが既に存在するかどうかを確認するためにデータベース クエリを実行しています。そうであれば、必要なフィールドを新しいオブジェクトに保存してから、save() メソッドを呼び出します。より良い方法が必要であり、どんな助けもいただければ幸いです!

Jackson を使用して json 応答を解析しています。API からのものではないフィールドに @JsonIgnore を設定しましたが、違いはありません。

4

2 に答える 2

0

@JsonIgnore は機能しません。@Ignore は Sugar ORM によって提供される注釈ですが、無視は mysql からフィールドを完全に除外するためのものです。

あなたがすべきことは、あなた自身のアプローチと非常に似ています。両方のオブジェクトを比較しながら保存を使用する前に、ローカル オブジェクトからサーバー オブジェクトに属性を設定してから保存します。

これを頻繁に行う場合は、最初にsugar ormを拡張し、代わりに他のすべてのモデルをそのクラスに拡張する特別なクラスでsaveメソッドを@Overridaする必要があります。

于 2016-01-06T17:54:39.140 に答える