我正在开发一个rails 3应用程序,该应用程序具有针对特定用户或移动设备的不同子域。
这是视图结构的样子:
应用程序/
----视图/
--------移动/
--------管理员/
可以通过简单调用
为路径集添加新的视图路径prepend_view_path(some_path)
或
append_view_path(some_path)
现在,我想删除它们。
有没有办法从控制器path_set中删除任何以前添加的路径?
我没有在API中找到任何有用的方法,并且在使用我在数组上使用的标准方法时(例如delete_at
)我得到以下RuntimeError:
can't modify frozen array
我已经为移动设备的请求使用了不同的mime类型。如果我无法删除添加的路径,那也不算太糟糕。我只是想找到一种方法来重置为“默认”视图路径。
答案 0 :(得分:1)
Rails分别提供了另外两种getter和setter方法 - view_paths()和view_paths=方法。我相信使用'view_paths ='方法,您可以删除动态附加的视图路径。
答案 1 :(得分:0)
您希望禁止普通用户使用管理功能。更好的方法是使用'cancan'等“授权”插件。