class Admin::EditableContentsController < Admin::BaseController before_action :set_content, only: [:show, :edit, :update] before_action :set_current_section, only: [:index, :show, :edit] def index @path = params[:path].presence scope = EditableContent.order(path: :asc) scope = scope.where(path: @path) if @path @pagy, @contents = pagy(scope) end def show end def edit end def update if @editable_content.update(content_params) render json: { status: "success", message: "Content updated" }, status: :ok else render :edit, status: :unprocessable_entity end end private def set_content @editable_content = EditableContent.find(params[:id]) end def content_params params.require(:editable_content).permit(:path, :key, :lang, :content, :rich_text) end def set_current_section @current_section = :content end end