NSSet和核心数据

泰隆

我正在尝试在核心数据中保存两个对象列表。我有一个协议方法,将我的标签添加为(Tag)并将其放入标签数组中。我无法使用NSSet和扩展名(用于swift)将这些对象保存为:

extension CurrentTransaction {
func addTagObject(value:Tag) {
    var items = self.mutableSetValueForKey("tagMembers");
    items.addObject(value)
 }

 func removeTagObject(value:Tag) {
    var items = self.mutableSetValueForKey("tagMembers");
    items.removeObject(value)
 }
}

我要保存的核心数据中的两个对象是:

class Pic: NSManagedObject {

@NSManaged var picName: String!
@NSManaged var picNumber: String!
@NSManaged var currentTransaction: CurrentTransaction

class func createInManagedObjectContext(moc: NSManagedObjectContext, name: String, number: String) -> Pic {
    let newPic = NSEntityDescription.insertNewObjectForEntityForName("Pic", inManagedObjectContext: moc) as! Pic
    newPic.picName = name
    newPic.picNumber = number

    return newPic
}
}

类标签:

class Tag: NSManagedObject {

@NSManaged var tagName: String!
@NSManaged var tagNumber: String!
@NSManaged var currentTransaction: CurrentTransaction

class func createInManagedObjectContext(moc: NSManagedObjectContext, name: String, number: String) -> Tag {
    let newTag = NSEntityDescription.insertNewObjectForEntityForName("Tag", inManagedObjectContext: moc) as! Tag
    newTag.tagName = name
    newTag.tagNumber = number

    return newTag
}


}

class currentTransaction:

class CurrentTransaction: NSManagedObject {

@NSManaged var destinationPIC: String
@NSManaged var sourcePIC: String
@NSManaged var nvdNumber: String
@NSManaged var numberOfAnimals: NSNumber
@NSManaged var requestType: String
@NSManaged var date: NSDate
@NSManaged var tagMembers: NSSet
@NSManaged var picMembers: NSSet?


class func createInManagedObjectContext(moc: NSManagedObjectContext, toPic: String, fromPic: String, nvd: String, numAnimals: NSNumber, request: String, date: NSDate, tags: NSSet, pics: NSSet) -> CurrentTransaction {

    let newTransaction = NSEntityDescription.insertNewObjectForEntityForName("CurrentTransaction", inManagedObjectContext: moc) as! CurrentTransaction

    newTransaction.destinationPIC = toPic
    newTransaction.sourcePIC = fromPic
    newTransaction.nvdNumber = nvd
    newTransaction.numberOfAnimals = numAnimals
    newTransaction.requestType = request
    newTransaction.tagMembers = tags
    newTransaction.picMembers = pics
    newTransaction.date = date

    return newTransaction
}

}

当我调用CurrentTransaction.addTagObject(tag:Tag)时,我得到“无法使用类型为((Tag))的参数列表调用'addTagObject'

这是我的addTags协议方法:

func addTags(tag: Tag) {
    //println("IN ADD TAGS")
    //println(tag.tagNumber)
    self.tagList.append(tag)
    CurrentTransaction.addTagObject(tag) //Error on this line
}
乔·史密斯

原因:addTagObject()未定义为类函数,因此无法在类CurrentTransaction上调用。如果打算将其用作类功能,请将其更改为:

class func addTagObject(value:Tag) {
    var items = self.mutableSetValueForKey("tagMembers");
    items.addObject(value)
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

核心数据关系,NSSet和ManagedObjectContext

来自分类Dev

核心数据-NSString的NSSet

来自分类Dev

将Mantle与核心数据结合使用-NSSet和NSArray

来自分类Dev

核心数据:设置NSSet Swift

来自分类Dev

iOS核心数据一对多关系NSSET

来自分类Dev

正确的语法循环通过核心数据NSSet

来自分类Dev

Swift:如何检查对象的核心数据NSSet

来自分类Dev

Swift:如何检查对象的核心数据NSSet

来自分类Dev

核心数据和didSelectRowAtIndexPath

来自分类Dev

核心数据和UIActivityViewController

来自分类Dev

NSUserdefault和核心数据

来自分类Dev

iOS,核心数据:计算NSSet时,set参数不是NSSet错误

来自分类Dev

核心数据配置和重置数据

来自分类Dev

UITableView核心数据分组和关系

来自分类Dev

WatchKit和iOS App的核心数据

来自分类Dev

iOS中的MySQL和核心数据

来自分类Dev

dispatch_queue和核心数据

来自分类Dev

WatchKit,核心数据和表格

来自分类Dev

核心数据和UISearchBar之间的问题

来自分类Dev

dispatch_queue和核心数据

来自分类Dev

RestKit和核心数据:最佳实践

来自分类Dev

合奏和核心数据迁移

来自分类Dev

“快速核心数据”和UISearchController

来自分类Dev

将对象添加到NSSet时,与核心数据的逆关系导致崩溃

来自分类Dev

SwiftUI-使用.onDelete()从核心数据NSSet中删除-@FetchRequest

来自分类Dev

当项目添加到核心数据NSManagedObject关系的NSSet或从中删除时,如何触发通知?

来自分类Dev

核心数据一对多关系,在 NSSet 上分配、获取、谓词

来自分类Dev

核心数据,如何从关系集合中删除一个元素(NSSet)

来自分类Dev

使用MKMapView,核心位置和核心数据

Related 相关文章

热门标签

归档