Как использовать Realm в смешанном проекте Objective-C и Swift?IOS

Программируем под IOS
Anonymous
Как использовать Realm в смешанном проекте Objective-C и Swift?

Сообщение Anonymous »

У меня есть проект iOS, который уже написан на Objective-C, и в качестве локальной базы данных используется Realm.
У меня есть класс RealmTransactions.m, который является объектным c, и в нем есть все функции, которые я могу использовать для операций CRUD через Realm.
Когда я пытаюсь вставить объекты из быстрого контроллера в базу данных, используя функцию, объявленную в «RealmTransactions .m", в БД ничего не вставляется, но сбоев не происходит.
Я объявил объекты и необходимые классы в заголовке моста Objective-C, поэтому я могу получить доступ изнутри классов Swift .

Код: Выделить всё

+ (void)insertObjectInDB:(NSMutableArray *)conversationArray {
RLMRealm *realm = [RLMRealm defaultRealm];
[realm beginWriteTransaction];

for (DBObject *object in objectsArray)
{
DBObject *databaseObject = [self getSavedDbObject:object.id];
if(!databaseObject)
[realm addOrUpdateObject:object];
}
[realm commitWriteTransaction];}
и из Swift я называю это так:

Код: Выделить всё

RealmTransactions.insertObjectInDB(objectsArray as? NSMutableArray)
это «DBObject.h»

Код: Выделить всё

#import 

@interface DBObject : RLMObject

@property long long id;
@property (strong, nonatomic) NSString *message;
- (NSString *)conversationToString;

@end
Значит, я что-то упускаю в быстрой реализации?

Подробнее здесь: https://stackoverflow.com/questions/786 ... ft-project

Вернуться в «IOS»