因此,我正在使用 CMS 并在根域中进行活动。如果有一个活动或 CMS 页面将其选中,则此方法非常有效,但如果两个页面都没有,我会收到 Template is Missing 错误(因为我的节目实际上会重定向到该活动的捐赠过程)。无论如何要修复此模板缺少错误?如果我在控制器内进行救援,那么它不会命中 CMS,如果我首先拥有 CMS 路由,它将在命中活动控制器之前命中 404。
控制器
class CampaignsController < ApplicationController
before_action :find_campaign
def show
end
protected
def find_campaign
begin
campaign = Campaign.friendly.find(params[:id])
redirect_to donate_index_path(campaign_id: (campaign.id if campaign.active?)), method: :post
rescue
end
end
end
路线.rb
Cwi::Application.routes.draw do
# ...
resources :campaigns, only: :show, path: '/'
comfy_route :cms_admin, :path => '/admin'
root :to => "cms/content#show"
comfy_route :cms, :path => '/', :sitemap => false
end