Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios MagicalRecord更新实体';s关系对象不工作_Ios_Core Data_Magicalrecord - Fatal编程技术网

Ios MagicalRecord更新实体';s关系对象不工作

Ios MagicalRecord更新实体';s关系对象不工作,ios,core-data,magicalrecord,Ios,Core Data,Magicalrecord,我将一个对象传递给另一个视图控制器,并尝试更新该实体的关系对象。如下面所示,“self.stock”是传递给该视图控制器的实体。首先,我删除它的所有关系对象,然后向其中添加新的关系对象 股票 @class Photo, StockCategory, StockOption; @interface Stock : NSManagedObject @property (nonatomic, retain) NSString * name; @end @interface Stock (Cor

我将一个对象传递给另一个视图控制器,并尝试更新该实体的关系对象。如下面所示,“self.stock”是传递给该视图控制器的实体。首先,我删除它的所有关系对象,然后向其中添加新的关系对象

股票

@class Photo, StockCategory, StockOption;

@interface Stock : NSManagedObject

@property (nonatomic, retain) NSString * name;

@end

@interface Stock (CoreDataGeneratedAccessors)

- (void)addCategoriesObject:(StockCategory *)value;
- (void)removeCategoriesObject:(StockCategory *)value;
- (void)addCategories:(NSSet *)values;
- (void)removeCategories:(NSSet *)values;

- (void)addOptionsObject:(StockOption *)value;
- (void)removeOptionsObject:(StockOption *)value;
- (void)addOptions:(NSSet *)values;
- (void)removeOptions:(NSSet *)values;

@end
更新按钮操作

- (void)submit
{
    self.stock.name = name;

    for (StockCategory *category in self.stock.categories) {
        [category MR_deleteEntity];
    }

    for (StockOption *option in self.stock.options) {
        [option MR_deleteEntity];
    }

    //it seems below not working
    //self.optionsObject contains an array of Option objects, the same as self.categoriesObject below. 
    //I am sure array contains actual objects in it.
    for (StockOption *option in self.optionsObject) { 
        [self.stock addOptionsObject:option];
    }

    for (StockCategory *cateogry in self.categoriesObject) {
        [self.stock addCategoriesObject:cateogry];
    }

    NSError *error = nil;
    if (![self.stock.managedObjectContext save:&error]) {
        NSLog(@"Unresolved error %@, %@", error, [error userInfo]); //no error displayed. but I have used sqlite app to view it's documents, I can see the optionsObject and categoriesObject are not empty.
    }
}

这里的问题是什么?请指定@68cherries似乎是[self.stock addoptions对象:option];不工作。