Sha256: 667f9e4dc040869f48f5205bf2d7caa6d9371e933d8d0c3e420a1ce161ad572b
Contents?: true
Size: 1.28 KB
Versions: 8
Compression:
Stored size: 1.28 KB
Contents
# frozen_string_literal: true require_dependency 'c/admin_controller' module C class Admin::BlogsController < AdminController before_action :load_from_url, only: [:edit, :update, :destroy] load_and_authorize_resource class: C::Blog def index @blogs = filter_and_paginate(@blogs, 'created_at desc') end def create @blog = C::Blog.new(blog_params) if @blog.save redirect_to blogs_path else render :new end end def update if params[:commit] == 'upload' @blog.assign_attributes(new_image_params) render :edit elsif @blog.update(blog_params) redirect_to blogs_path else render :edit end end def destroy @blog.destroy respond_to do |format| format.js format.html { redirect_to pages_path } end end private def load_from_url @blog = C::Blog.get_from_url(params[:id]) end def new_image_params params.require(:blog).permit(new_images: [], images_attributes: [:id, :_destroy, :alt, :caption]) end def blog_params params.require(:blog).permit( :name, :body, :published, :url_alias, C::Blog::IMAGEABLE_ATTRIBUTES, C::Blog::PAGE_INFO_ATTRIBUTES, new_images: [] ) end end end
Version data entries
8 entries across 8 versions & 1 rubygems