2013-07-10 41 views
0

我是AngularJS的新手,FireBase作为我的数据存储。我已经浏览了他们网站上的例子。现在,我想扩展简单的概念并创建更详细的应用程序。AngularJS获取设置多个控制器

比方说,我有一个配方控制器。这将包含食谱名称和简短说明。但是,我也想要一份成分清单及其数量。

成分将是一个选择元素与可供选择的成分列表中选择。

我的问题是,如何在CRUD网站上使用多个控制器?或者我不应该使用多个控制器,并以某种方式使用配方控制器来处理所有事情?

如果我是通过在MSSQL中创建数据库模式来做到这一点,那么我就没有问题,并且完全知道该怎么做。我认为这是事实,一切都是客户端,这是抛弃我。

在此先感谢您提供的任何帮助。

回答

0

你可能不希望每个实体都有一个控制器。你在这里控制器映射到一个范围对象。范围然后绑定到一个视图 - 保持同步。所以如果你的视图显示一个配方(即名称/描述),它也可能有一个子属性成分($ scope.recipe.ingredients)。

你是控制器将管理这个'食谱'对象,并提供修改/检索/管理它的方法。举个例子,你想把$ scope.reciepe对象保存到你的FireBase商店 - 你可以在你的控制器中注入一个服务,然后做一个$ http调用来把这个对象放到你的数据库中。

简要控制

的概念性概述多见于https://docs.angularjs.org/guide/controller

+1

要在不同的字重申,它往往是更加有用的是具有每视图的控制器,而不是每模型的控制器。如果您希望为在同一视图中使用的不同模型模块化特定于模型的功能,则可以考虑为每个模型创建一个服务。这只是一种可能的模式。 – bennlich

+0

此外,您可以利用[angularfire](http://github.com/firebase/angularfire)自动将数据注入Firebase并跳过$ http REST命令。 – Kato

+0

优秀!谢谢莱昂。这只是我需要的澄清。加藤,是的,我将会使用angularFire。 –