我有一個從BaseSwitchesController繼承的用於json的SwitchesController。Rails 4 - 控制器使用超級控制器的視圖路徑
module Api
module V1
class SwitchesController < BaseSwitchesController
respond_to :json
end
end
end
我有另一個SwitchesController,也繼承自BaseSwitchesController,爲html。
class SwitchesController < BaseSwitchesController
layout 'application'
end
BaseSwitchesController繼承自ApplicationController。
class BaseSwitchesController < ApplicationController
def update
respond_to do |format|
if @switch.update(switch_params)
format.html { redirect_to @switch, notice: 'Switch was successfully updated.' }
format.json { render json: @switch.as_json.merge(:message => 'set_switch_value') }
else
format.html { render action: 'edit' }
format.json { render json: @switch.errors, status: :unprocessable_entity }
end
end
end
我想將json移動到API模塊中的SwitchesController。 問題是SwitchesController中的方法正在查看views/base_switches中的視圖,但該文件夾不存在。它應該在視圖/開關中查找視圖,並選擇index.json.rabl。
我該如何解決這個問題?謝謝!
你在BaseSwitchesController中硬編碼渲染或重定向路徑嗎?告訴我們你的BaseSwitchesController – usha 2014-08-28 12:15:53
我對這個問題做了一些改變。 – hansottowirtz 2014-08-28 12:25:50
我希望Rails在視圖/開關中查看views/base_switches **和**中的視圖(但不按此順序)。這就是模板繼承的工作原理。 – pdobb 2014-08-28 13:14:25