我们使用rails 4 beta和emberjs 1.0.0rc1开始了一个项目。
我正在寻找以下问题的“食谱”或模式:
拥有/模拟“过滤器前”,例如在没有当前用户时重定向用户
拥有控制器和模型命名空间,例如/ admin / videos | / videos | / member / videos用于根据您的角色访问不同的馆藏(管理员/视频仅返回所有视频,/视频仅公开视频和/成员/视频仅用于我的视频......)
何时何地加载和存储共享对象,例如currentUser?它应该随处可用,比如“rails”current_user(我们现在使用需求或App.set(),但对它不是很满意
在“文档”DOM元素上捕获事件的最佳方式,而不是emberjs应用程序视图(例如隐藏/显示像facebook用户菜单这样的菜单):我点击icone来显示它,我点击用于隐藏它的DOM文档(有时在我的ember应用程序之外...
答案 0 :(得分:0)
redirect
上有Ember.Route
个问题。它记录在网站上。
我不确定这与客户端应用程序有什么关系。我会在后端想象这种过滤器。
needs
或App.inject
绝对是您想要的。您应该有一个currentUser
控制器,并且需要/将其注入所有控制器。
也许在ApplicationRoute
注册一个处理程序并从那里发送路由器事件。
一些注意事项:
应该在任何钩子之外调用 App.inject
和App.register
:
App.inject('controller', 'gobalUser', 'controller:currentUser');
答案 1 :(得分:0)
我们正试图这样做:
App.ApplicationRoute = Ember.Route.extend
setupController: ->
App.register('controller:currentUserController', App.CurrentUserController );
App.inject('controller', 'gobalUser', 'controller:currentUserController');
我们得到了这个错误: 未捕获RangeError:超出最大调用堆栈大小