未分類

Realmでデータを更新または追加する方法

投稿日:

モデルにプライマリキーを指定しているなら、Realm().add(_:update:)を使って、オブジェクトがすでに存在する場合は更新、存在しない場合は新しく追加というように、追加または更新を一度に行うことができる。

RealmSwiftの最新版だと、ドキュメントから変更している。

realm.add(self, update: true)
// ↓
realm.add(self, update: .modified)

try! realm.write {
            task.title = titleTextField.text!
            task.date = dateString
            realm.add(self.task, update: .modified)
        }

realm.add(task)でも追加できるが更新も同時に行いたいなら上記の書き方がよい。

参考:【Swift5】Realmでデータを管理する
プライマリキーを使ってオブジェクトを作成・更新する

-未分類

執筆者:

関連記事

Dropboxで容量節約する時の注意点(二重保存を回避する)

二重で保存している状態 ファインダーからアクセスできるDropboxフォルダは、PC上とDropbox上の二重で保存している状態である。 PCの容量節約したいのでこれでは意味がない。 よくアクセスする …

no image

パーツをコードで配置する方法

パーツはStoryBoardで置く以外に、コードからも配置できる。 ImageViewをコードから配置してみる。 1.インスタンスを生成する //インスタンス生成 var imageView = UI …

レガシータイトルで綺麗な角丸四角形を作る方法

レガシータイトルで綺麗な角丸四角形を作りたい。 角丸長方形(可変)ツールで作ると角が歪む 角丸長方形を作成し、右の「フィレットサイズ」で角を調整できる。 ただし、角が歪んでしまう。(画像の下の長方形の …

no image

モーショングラフィックテンプレートを読み込む

ダウンロードしたテンプレートは拡張子『.mogrt』で保存されます。テンプレートを使う際には、Premiere Proのローカルテンプレートフォルダにコピーするか、エッセンシャルグラフィックスパネルか …

no image

StaticCellでコードからセルに変更を加えたい時の対処法

StaticCellだと、セルに情報を入れるメソッドfunc tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath …