app/controllers/charities_controller.rb
class CharitiesController < ApplicationController
before_action :set_charity, only: [:show, :edit, :update, :destroy]
# GET /charities
def index
@charities = Charity.all
end
# GET /charities/1
def show
end
# GET /charities/new
def new
@charity = Charity.new
end
# GET /charities/1/edit
def edit
end
# POST /charities
def create
@charity = Charity.new(charity_params)
respond_to do |format|
if @charity.save
format.html { redirect_to @charity, notice: 'Charity was successfully created.' }
format.json { render :show, status: :created, location: @charity }
else
format.html { render :new }
format.json { render json: @charity.errors, status: :unprocessable_entity }
end
end
end
# PATCH/PUT /charities/1
def update
respond_to do |format|
if @charity.update(charity_params)
format.html { redirect_to @charity, notice: 'Charity was successfully updated.' }
format.json { render :show, status: :ok, location: @charity }
else
format.html { render :edit }
format.json { render json: @charity.errors, status: :unprocessable_entity }
end
end
end
# DELETE /charities/1
def destroy
@charity.destroy
respond_to do |format|
format.html { redirect_to charities_url, notice: 'Charity was successfully destroyed.' }
format.json { head :no_content }
end
end
private
def set_charity
@charity = Charity.find(params[:id])
end
def charity_params
params.require(:charity).permit(:name, :description, :url, :image)
end
end