我正在尝试在 Rails 中为我的站点构建一个 CMS,我希望为阅读我站点的人们能够看到的所有 View 设置单独的样式,即 index
和 show
View ,以及处理创建、更新和删除 View 的 View 。我知道我可能应该将这两个区域分离到单独的 Controller 中,并为所有管理员的路由命名空间,但我不知道如何进行 View 。
有没有办法为一组特定的 Controller 指定布局,包括样式表和 javascript 文件?请注意,我使用的是 Rails 3.1,所以现在我所有的样式表和脚本都被编译成单个文件,每个 View 都提供这些文件。
最佳答案
我四处寻找非常相似的东西。并且有幸找到 Iain Hecker 撰写的精彩教程文章。
它是使用命名空间和模板继承设置的。最好的部分是他使用了 Jose Valim 的 inherited_resources gem,它真正清理了你的 Controller 。
无论如何,它确实让我走上了正确的道路。
此外,在您的默认 application.js 中会有帮助,请务必使用:
//= require_directory .
代替
//= require_tree
这将使链轮只加载当前目录中的文件。然后你可以添加一个 admin/文件夹,它有自己的 application.js 文件来做同样的事情。
然后当然在 layouts/application.html.erb 中使用:
<%= javascript_include_tag "application" %>
在 layouts/admin/application.html.erb 中:
<%= javascript_include_tag "admin/application" %>
希望对您有所帮助...
亚当。
关于ruby-on-rails - 在 Rails 应用程序中为管理界面定义单独的 View 和 Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8078379/