57 lines
1.2 KiB
Ruby
57 lines
1.2 KiB
Ruby
class MembersController < ApplicationController
|
|
before_action :authenticate_user!, only: [:new, :edit, :update, :create, :destroy]
|
|
allow_unauthenticated_access(only: %i[index show])
|
|
def index
|
|
@members = Member.all
|
|
end
|
|
|
|
def blogs
|
|
@blog = Blog.all
|
|
end
|
|
def edit
|
|
@member = Member.find(params[:id])
|
|
end
|
|
def new
|
|
@member = current_user.members.new
|
|
end
|
|
def update
|
|
@member = Member.find(params[:id])
|
|
if @member.update(member_params)
|
|
redirect_to @member
|
|
else
|
|
render :edit
|
|
end
|
|
end
|
|
|
|
def create
|
|
@member = current_user.members.new(member_params)
|
|
|
|
if @member.save
|
|
redirect_to @member
|
|
else
|
|
redirect_to root_path
|
|
end
|
|
end
|
|
|
|
def destroy
|
|
@member = Member.find(params[:id])
|
|
@member.destroy
|
|
redirect_to member_path(@member), notice: "Member deleted."
|
|
|
|
end
|
|
|
|
def show
|
|
@member = Member.find_by(id: params[:id])
|
|
if @member.nil?
|
|
flash[:alert] = "Member not found"
|
|
redirect_to root_path
|
|
return
|
|
end
|
|
end
|
|
end
|
|
private
|
|
|
|
def member_params
|
|
params.require(:member).permit(:name, :avatar_image, :bio, :links, :birthday, :pronouns, :system_role, :age, :tv_interests, :music_interests, :other_interests)
|
|
end
|
|
|