错误:CoreData:错误:无法调用指定的初始化程序在NSManagedObject类'Product' [英] Error : CoreData: error: Failed to call designated initializer on NSManagedObject class 'Product'
问题描述
我开始使用ios 5使用核心数据。我有我的产品型号:
I start to use core data with ios 5. I have my product model :
Product.m:
Product.m :
#import "Product.h"
@implementation Product
@dynamic category_id;
@dynamic label;
@dynamic price;
@end
Product.h:
Product.h :
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
@interface Product : NSManagedObject
@property (nonatomic, retain) NSString *category_id;
@property (nonatomic, retain) NSString *label;
@property (nonatomic, retain) NSString *price;
@end
我尝试使用NSXMLParserDelegate解析一个带有自定义类的xml。我的xml看起来像:
I try to parse an xml with a custom class using NSXMLParserDelegate. My xml looks like :
<section id="2">
<label>Animaux</label>
<image>Images/Rayons/Bandeau/Animaux.png</image>
<key>Images/Rayons/Bandeau/Animaux.png</key>
<products>
<Product id="21">
<category_id>Chat</category_id>
<label>Aliments pour chat</label>
<price>2.00</price>
</Product>
<Product id="1286">
<category_id>Chat</category_id>
<label>Boite de paté</label>
<price>0.00</price>
</Product>
</products>
</sections>
当我有一个balise产品时,我建立这样的模型:
When i have a balise Product, I build my model like this :
item = [[NSClassFromString(className) alloc] init];
当我有一个属性category_id,我做:
And when i have a property as category_id, i do :
[item setValue:currentNodeContent forKey:elementName];
我得到错误:
CoreData:错误:无法调用NSManagedObject类'Product'上指定的初始化程序
任何想法?
推荐答案
NSManagedObject 说明专用初始化器是:
The docs for NSManagedObject state that the dedicated intializer is:
initWithEntity:insertIntoManagedObjectContext:
这就是为什么会失败。我看到的大多数例子建议你应该得到一个这样的新对象
which is why that is failing. Most of the examples I have seen suggest you should get a new object like this
[NSEntityDescription entityForName:@"MyClass" inManagedObjectContext:self.managedObjectContext]];
所以你可以试试:
[NSEntityDescription entityForName:className inManagedObjectContext:self.managedObjectContext]];
这篇关于错误:CoreData:错误:无法调用指定的初始化程序在NSManagedObject类'Product'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!