草庐IT

nsmanagedobject

全部标签

ios - 在 UITableViewCell 返回 View 后,NSManagedObject 数据为 <fault> 且实体为空

我看到使用Swift和Xcode7.2的CoreData有一些非常奇怪的行为。下面是说明该问题的动画。我创建了一个简单的示例,其中包含一个名为“Person”的实体,它只有一个“name”属性。我获取所有“人”实体并将它们显示在TableView中。如果我强制重新加载一个单元格,那么保存名称的textLabel和NSManagedObjectobjectID将不显示名称。但是,objectID保持不变。这在设备和模拟器中都会发生。我在“cellForRowAtIndexPath”中将Person实体的值打印到控制台,这样我就可以显示单元格最初加载时和重新加载时的值。如您所见,尽管NSM

Swift:无法将类型 'NSManagedObject_' 的值转换为 'dataModel.Entity'

我真的不知道我要解释什么,如果需要的话,请不要犹豫,问我更多的代码或解释..我正在尝试使用CoreData存储从httpPOST请求获取的数据,然后将它们打印在UITableView上。我成功地从JSON中获取数据并将它们发送到数据库。问题是当我尝试将数据从数据库发送到UITableView时。这是我第一次使用CoreData,所以为了了解它的工作原理,我遵循了本教程并根据自己的情况进行了调整:https://www.youtube.com/watch?v=UniafUWsvLg这是我工作的实体:importFoundationimportCoreDataclassTask:NSMan

ios - 任何模型中的 NSEntityDescriptions 都没有声明 NSManagedObject 子类

我是CoreData的新手,我正在尝试创建一种缓存机制,其中在从API解析对象后,我将它们保存到数据模型中,然后再次获取它以在TableView上显示它。我正在尝试使用NSFetchedResultsController获取它。在初始化NSFetchedResultsController时,我遇到了这个运行时异常:2018-12-0915:03:20.493509+0800[5184:148001][error]error:NoNSEntityDescriptionsinanymodelclaimtheNSManagedObjectsubclass'Product'so+entityi

core-data - 为什么在使用 Swift 的 XCTest 下运行时 executeFetchRequest 不返回子类对象?

我有一个使用CoreData和NSManagedObject子类设置的Swift项目。它们有一个类名设置(在xcdatamodelView中),其中包括作为类的主要目标名称“MainTarget.MyEntity”,按照.运行应用程序时一切正常。但是,我使用XCTest添加了一些单元测试,当将executeFetchRequest的结果转换为正确的类型时,应用程序开始崩溃并出现ERR_BAD_ACCESS或ERR_BAD_INSTRUCTION。我还尝试将数组中的每个元素转换为数组,这也会导致崩溃。在我所有的测试用例中错误都是零。varentities=_managedContext.

swift - NSManagedObject 子类模拟

我正在编写XCTest案例,但我被困在一个地方。我的主要目标中有一个ClassCar,它是NSManagedObject的子类。我正在创建模拟,它将包含Car类的对象数组。但是每当我对Car的元素使用setter时,它就会崩溃。在主要目标中classCar:NSManagedObject{@NSManagedvarname:String}在测试目标中classCarTests:XCTestCase{functestCar(){letcar=getMyCar()//Someassertshere}funcgetMyCar()->Car{letcar:Car=Car.Init()car.n

ios - 核心数据在 swift 中管理对象 - 允许 nil 吗?

我已经在swift中为我的模型对象创建了NSManagedObject子类。通常我的模式是创建一个对象的实例,然后在其上设置属性,然后保存。新对象的属性设置为nil。不过,它们不是可选项。我很快想到这是不允许的?很多时候我需要检查值,但是如果我尝试这样的事情:如果(managedObject.property==nil)我崩溃了。 最佳答案 在创建NSManagedObject子类时,Xcode似乎不会自动将托管变量设为可选。如果值在模型中设置为可选,那么它们在子类中也应该是可选的。(我手动将它们设置为可选)classClassWi

ios - 使用 Coredata Swift 发送到实例的无法识别的选择器

每当我尝试更新核心数据模型的值时,我都会收到此错误。这是我的模型importFoundationimportCoreData@objc(Habit)classHabit:NSManagedObject{@NSManagedvarname:String@NSManagedvartrackingType:NSNumber}这是我的代码tableViewCelloverridefuncsetSelected(selected:Bool,animated:Bool){super.setSelected(selected,animated:animated)ifselected{self.acc

ios - swift 核心数据 : error: Failed to call designated initializer on NSManagedObject class 'NSManagedObject'

我正在使用核心数据在vc1中保存一个类别,并想将列表属性添加到vc2中的列表中。我的数据模型是许多列表属性的一个类别。我在vc1中添加这样的类别:funccreateNewCategory(){varcategory:NSManagedObject!=NSEntityDescription.insertNewObjectForEntityForName("Category",inManagedObjectContext:self.context)asNSManagedObjectcategory.setValue(self.categoryTextField.text,forKey:"

swift - keyPathsForValuesAffecting 与 NSManagedObject

您好,我想将Aaron书中的objective'c练习翻译成swift,但我找不到解决方案。目标代码是:@dynamicfirstName;@dynamiclastName;@dynamicdepartment;+(NSSet*)keyPathsForValuesAffectingFullName{return[NSSetsetWithObjects:@"firstName",@"lastName",nil];}-(NSString*)fullName{NSString*first=[selffirstName];NSString*last=[selflastName];if(!fir

ios - 错误: CoreData: warning: Unable to load class named '' for entity 'Receipt' . 但是类被删除了

我已经为我的实体创建了一个NSManagedObject的子类,但是在我删除它之后因为我不使用它,我只在我的xcdatamodeld文件中指定了实体。当我使用这个实体时,我现在在我的控制台中收到这条消息:CoreData:警告:无法为实体“Receipt”加载名为“”的类。找不到类,而是使用默认的NSManagedObject。!我怎样才能完全删除这个类,以便CoreData不再为我的实体研究一个类? 最佳答案 您很可能仍然让您的模型尝试访问该类。进入您的XCDataModel并确保所有实体的“类名”都设置为NSManagedObj