4

Android でライブラリ DBFlow を使用しようとしています。以前に使用したことがあり、古いバージョン (2.2.1) では $Table.field を使用していました。現在、「_Table」によって新しいクラスを参照する別の形式があるようです。

例:

int taxBracketCount = SQLite.select(count(Employee_Table.name))
.from(Employee.class)
.where(Employee_Table.salary.lessThan(150000))
.and(Employee_Table.salary.greaterThan(80000))
.count();

これらの「_Table」クラスはいつどこで作成されますか? それらにアクセスするにはどうすればよいですか? (以前のバージョンを使用したい場合でも、新しく作成したスタジオ プロジェクトでは $ ファイルも作成されません。これについての説明、またはその両方があればよいでしょう)

4

5 に答える 5

4

ファイルを生成するには、ビルドを正常に実行する必要があります。コードがコンパイルできることを確認してください。「_Table」クラスへの参照をすべて削除し、最初にプロジェクトを実行すると、それらにアクセスできるようになります。

于 2016-06-15T03:30:38.883 に答える
2

最近、以下のように奇妙なエラーが発生しました。これらの「$Table」クラスが見つからないと言われましたが、実際にはビルドされていました。

すべての新しいJavaファイルにコメントを付けてコメントを外しました。そして最終的に、DBFlowの1つのモデルクラスに「@PrimaryKey」がないことが原因であることがわかりました。

そのため、DBFlow モデル クラスに流血の"@PrimaryKey"を定義する必要があります ( BaseModel も拡張することを忘れないでください)。PS: DBFlow バージョン 3.0.0-ベータ版

/Users/XXX/code_projects/###/src/main/java/com/XXXXX.java:9: error: cannot find symbol
import com.XXX.databasemodel.XXX$Table
于 2016-09-06T08:03:34.390 に答える