0

因此,我正在使用 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
4

0 回答 0