我正在重新模板化需要呈现不同视图而不是旧样式的应用程序的管理部分。使用以下内容,view_paths
显示该路径是前置的,但仍呈现旧视图。
# View folder structure
# /app
# --/views
# ----/admin
# ------/dashboard
# --------show.html.erb
# ----/admin_v2
# ------/dashboard
# --------show.html.erb
# routes.rb
constraints subdomain: 'admin' do
scope module: 'admin', as: 'admin' do
root to: 'dashboard#show'
end
end
# AdminController
class AdminController < ApplicationController
prepend_view_paths "#{Rails.root}/app/views/admin_v2"
end
# Admin::DashboardController
class Admin::DashboardController < AdminController
def show
end
end
我已经四处移动,试图戳穿其中的孔,但是我唯一的猜测是,这与我的路线的结构方式有关。
关于为什么的任何想法?
答案 0 :(得分:1)
所以我自己弄清楚了。
它与路由范围有关。基本上是在我的lookup_context
上添加一个管理员前缀。
通过更改文件夹结构以考虑到这一点,如下所示,我能够使一切正常运行。
# View folder structure
# /app
# --/views
# ----/admin
# ------/dashboard
# --------show.html.erb
# ----/admin_v2
# ------/admin
# --------/dashboard
# ----------show.html.erb