如何在Realm Objective-C中更新特定记录

时间:2015-10-13 08:35:51

标签: objective-c realm

我想更新Realm Objective-C中的特定记录。目前,我还没有找到任何代码提及更新特定记录。请帮我怎么做。

我的代码下面是在Realm中添加记录。但我想更新有关 cpID 的记录。

RLMCoachPadItem *RMLCoachPad = [[RLMCoachPadItem alloc]init];
RMLCoachPad.cpID = [NSString stringWithFormat:@"%d", results.count+1];
RMLCoachPad.cpDescription = _txtMessage.text;
RMLCoachPad.cpTagId = @"";


RLMRealm *realm = [RLMRealm defaultRealm];
[realm beginWriteTransaction];
[realm addObject:RMLCoachPad];
[realm commitWriteTransaction];

1 个答案:

答案 0 :(得分:1)

您可以找到有关如何更新对象here的文档。

documentation的示例:

  

您还可以通过传递部分更新主键对象   您希望更新的值的子集以及主键:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/toolbar"
    android:minHeight="?attr/actionBarSize"
    android:background="@color/light_primary_color"
    >
    <android.support.v7.widget.ActionMenuView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
    <android.support.v7.widget.ActionMenuView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        />
</android.support.v7.widget.Toolbar>

假设// Assuming a "Book" with a primary key of `1` already exists. [realm beginWriteTransaction]; [Book createOrUpdateInRealm:realm withValue:@{@"id": @1, @"price": @9000.0f}]; // the book's `title` property will remain unchanged. [realm commitWriteTransaction]; cpID的主键,并且您想要更新说明(RLMCoachPadItem):

cpDescription