I'm not to the point of wiring up the UI yet. I will employ bindings when I do 
so but at the moment I am creating a complex data model using NSManagedObject 
subclasses with lots of customized behaviors. I do this all the time in 
Objective-c but I am uncertain how to go about doing so in MacRuby. 

 The @dynamic processor in Objective-C 2.0 autogenerates attribute and 
relationship accessors except for the to-many relationship convenience methods 
but obviously MacRuby has no such capability. I don't think the `attr_accessor 
` in ruby will generate the proper core data accessors. 

I suppose my real question is: Do we have to write all the accessors like we 
used to do in the early days of Core Data in Objective-s 1.0 or is there some 
functionality in ruby or MacRuby that obviates the need to do so? 

Thanks,
Shannon


On Jun 27, 2011, at 5:55 PM, Matt Aimonetti wrote:

> Hey Shannon,
> 
> I'm not sure I fully understand, but you should be able to just set the 
> accessor and do the binding via Xcode as shown here: 
> http://ofps.oreilly.com/titles/9781449380373/_core_data.html
> Let me know if that doesn't answer your question.
> 
> - Matt
> 
> On Mon, Jun 27, 2011 at 3:45 PM, Shannon Love <tech...@me.com> wrote:
> Howdy,
> 
> I've Core Data a lot in Objective-c and now I am trying to use it in MacRuby. 
> It occurs to me that I might need to create the to-many relationship 
> accessors just like you have to do in Objective-C. 
> 
> To clarify: Suppose I have a data model that models a file structure and 
> which looks like this:
> 
> Folder{
>   name:string
>   parent<<-->Folder.subFolders
>   subFolders<-->>Folder.parent
>   files<-->>File.folder
> }
> File{
>   name:string
>   folder<<-->Folder.file
> }
> 
> In Objective-C, I would normally have methods in the `Folder` class that 
> would look like:
> 
> addSubFoldersObject:
> removeSubFoldersObject:
> addSubFoldersObjects:
> removeSubFoldersObjects:
> 
> The methods themselves would use look something like:
> 
> - (void)addSubFoldersObject:(FetchedPropertyExtractor *)value {    
>     NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
>     [self willChangeValueForKey:@"SubFolders" 
> withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
>     [[self primitiveValueForKey:@"SubFolders"] addObject:value];
>     [self didChangeValueForKey:@"SubFolders" 
> withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
>     [changedObjects release];
> }
> 
> Do you have to do the same thing in MacRuby or will the normal ruby set 
> operations suffice?
> 
> Thanks,
> Shannon Love a.k.a TechZen
> 
> 
> 
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel@lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
> 
> 
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel@lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel

_______________________________________________
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel

Reply via email to