【发布时间】:2020-03-31 17:14:11
【问题描述】:
我有一个 newsfeeditem,许多用户共享了这个 newsfeeditem。我需要为一个 newsfeedItem 保存许多用户。我有一个从 newsFeedItem 到 SlickUser 的一对多关系。 但我不知道如何将 SlickUser 数据保存或关联到 newsFeedItem。抱歉,我是核心数据的新手,我无法使用一对多关系保存数据。如果有人可以指导我如何使用 SlickOwner 将数据保存在 newsFeedItem
for(int i =0 ; i < posts.user.count ; i++)
{
SlickUser * user = posts.user[i];
if (self.contactdb) {
[self.contactdb setValue:user.Aprovider forKey:@"Aprovider"];
[self.contactdb setValue:user.name forKey:@"name"];
[self.contactdb setValue:user.userid forKey:@"userid"];
}
else{
NSManagedObject *newdevice = [NSEntityDescription insertNewObjectForEntityForName:@"SlickUser" inManagedObjectContext:context];
[newdevice setValue:user.Aprovider forKey:@"Aprovider"];
[newdevice setValue:user.name forKey:@"name"];
[newdevice setValue:user.userid forKey:@"userid"];
NSError *error = nil;
if (![context sa[here is the image for newsFeedItem ][1]ve:&error])
{
NSLog(@"can't save %@ %@", error, [error localizedDescription]);
}
}
} 这是 newsFeedItem 实体:
extension NewsFeedDataItem {
@nonobjc public class func fetchRequest() -> NSFetchRequest<NewsFeedDataItem> {
return NSFetchRequest<NewsFeedDataItem>(entityName: "NewsFeedDataItem")
}
@NSManaged public var aprovider: String?
@NSManaged public var lid: String?
@NSManaged public var owner: NSSet?
}
xtension NewsFeedDataItem {
@objc(addOwnerObject:)
@NSManaged public func addToOwner(_ value: SlickUser)
@objc(removeOwnerObject:)
@NSManaged public func removeFromOwner(_ value: SlickUser)
@objc(addOwner:)
@NSManaged public func addToOwner(_ values: NSSet)
@objc(removeOwner:)
@NSManaged public func removeFromOwner(_ values: NSSet)
}
这是 UserSlick 实体:
extension SlickUser {
@nonobjc public class func fetchRequest() -> NSFetchRequest<SlickUser> {
return NSFetchRequest<SlickUser>(entityName: "SlickUser")
}
@NSManaged public var aprovider: Int64
@NSManaged public var userid: String?
@NSManaged public var userPic: String?
@NSManaged public var newsFeedPost: NewsFeedDataItem?
}
【问题讨论】:
-
你能分享更多你的模型/实体是什么吗?屏幕截图没有提供足够的信息来提供帮助。听起来像这样设置了两个实体:“Feed 项目”有 1 个所有者和许多订阅者(两者都是“用户”类型)。在这种情况下,“用户”将与“供稿项目”具有 2 对多关系。一种关系是项目的所有者,一种关系是他们自己的订阅。对吗?
-
@richardpiazza,我已经为 userSlick 和 NewsfeedItem 编辑了帖子并发布了实体。feedItem 只是拥有所有者,因为许多所有者可以共享同一个帖子。所以 owner 和 newsfeeditem 有一对多的关系
标签: ios objective-c core-data