私はすでに働いてコアデータと永続ストレージ機能を持ったアプリケーションを持っています。私はこのアプリで使用DATAStackが欲しい、私はそれが仕事を得ることができません。DATAStackライブラリは
DATAStackなければ私は私のAppDelegate
にアルこれらの標準的なコア・データlazy var
sでした。 let moc = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext
:私のViewController
で私はこのようなmanagedObjectContext
を取得しました。保存の世話をするだろう関数にmoc
変数に合格し、どこかにラインの下のmoc.save()
と呼ばれます。私はこれが動作することを知っている、私はまた検索し、アプリケーションを完全に閉じた後に動作する画面上に格納されたエントリを表示するため。そして、sqliteデータベースビューア(SQLite for SQLite Read-Only)でsqliteデータベースを調べます。
DATAStackでは、AppDelegate
:lazy var dataStack: DATAStack = DATAStack(modelName: "Database")
に新しい行を追加しました。私のデータベースモデルの名前は確かDatabase.xcdatamodeld
あるので、初期設定は右でなければなりません。私のViewController
では、let moc = (UIApplication.sharedApplication().delegate as! AppDelegate).dataStack.mainContext
で上記のvar moc = ...
を置き換えました。このmoc
変数が渡され、私はmoc.save()
という行の下のどこかに電話をかけますが、今は何も格納しません。私が説明したように、変更されたのは管理対象オブジェクトのコンテキストの由来です。
私はこのライブラリで何かを見逃しているに違いありませんが、私は何が欠けているのか分かりません。
私はSync example(SyncはDATAStackを使用しています)を見てきましたが、dataStack
オブジェクトはそこにまったく異なる方法で取得されています。