我是rails的新手,对CMS中的布局和路由有疑问.我在搜索网页后没有遇到过这个问题的答案,所以我希望有人可以帮助我.
我正在构建CMS并且必须布局,application.html.erb(默认)是登录后可用的前公共页面和admin.html.erb.
我有一个名为Post的资源.是否有可能只有show视图使用默认布局,而其余视图使用管理布局?
换句话说,我希望网址单个帖子像"myAppDomain/posts/1"并使用默认布局,
而管理视图应该有/ admin作为前缀并使用管理布局,
如"myAppDomain/admin/posts"," myAppDomain /管理/职位/ 1 /编辑"
现在我已经设置了一条路线,将"添加"/ admin添加到帖子网址
scope "/admin" do
resources :posts
end
Run Code Online (Sandbox Code Playgroud)
在PostsController中,我指定使用admin布局
class PostsController < ApplicationController
before_filter :authorize , :except => [:show]
layout 'admin'
...
Run Code Online (Sandbox Code Playgroud)
所以现在人们可以在不登录的情况下阅读帖子,但是我欢迎页面上单个帖子视图的链接呈现为"myAppDomain/admin/posts/1",它使用了admin布局
<%= link_to post.title, post %>
Run Code Online (Sandbox Code Playgroud)
有没有办法在资源的单个视图上使用不同的布局和路由,还是应该采用不同的方法?