2015-08-25 24 views
0

我想在web上做一些标准和微不足道的应用,但在IOS中可能无法实现。只是想知道是否有一种我没有想到的方式。基于MySQL数据方案ios/xcode/objective-c:任何方式链接到核心数据驱动页面中的其他视图控制器?

核心数据模型是:烹饪类型的

实体/表即意大利,中国,印度等 实体/餐馆表 实体/菜式表链接到餐馆

在网上,有一页美食餐桌上的美食。您可以点击菜肴,并显示与美食餐厅餐桌上的美食相关的餐厅。然后,您可以点击餐厅,然后进入从餐厅桌拉出的餐厅详情页面。常规的网站的东西。

对于应用程序,我有一个从烹饪实体拉菜的视图控制器。然而,当你点击美食时,我想不出一种方式来获得与美食餐厅实体的美食相关的餐厅列表,因为您现在正在从不同的实体拉取美食。

如果我能得到这个餐馆列表,我想我可以使用标准的主细节模式得到餐厅的细节。

但是,我找不出中间步骤或如何把它放在一起。

有没有人知道在core data/objective-c中做到这一点的方法,或者可以推荐一个在核心数据中这样做的教程?

在此先感谢您的任何建议。

回答

1

核心数据中的常用方法将是从Cuisine实体到Restaurant实体之间的关系。在代码中,这看起来像一组相关的对象。任何时候你有一个Cuisine的实例,你只需要询问它的restaurants属性的值。换句话说,一旦你有美食,你已经拥有了你需要的每一件食物的完整列表。您只需获得餐馆的集合,然后将其交给可以显示它们的视图控制器。

在模型编辑器中它会是这个样子:

enter image description here

在代码中,你曾经有过的Cuisine一个实例,让餐厅为美食也只是:

NSSet *restaurants = cuisine.restaurants; 

或者如果您不使用自定义NSManagedObject小类,

NSSet *restaurants = [cuisine valueForKey:@"restaurants"]; 
+0

好的。因此,如果我们在美食实体的餐厅中填充餐桌视图,是否可以为我们提供足够的信息 - 然后从每个餐厅的行到相应的餐馆详细信息页面进行分类? – user1904273

+0

每个'Restaurant'实例大概都有关于相关餐厅的详细信息,所以是的,您只需选择适当的实例并使用它。 –

+0

我以为我明白了这一点,但是在抓住诸如它的id字段等美食的属性方面出现了一个错误。我是否应该能够通过诸如cuisine.restaurants.id之类的内容获取餐厅的ID?我虽然有这个工作,但现在它在cuisine.restaurants.id上抛出一个异常。 – user1904273

相关问题