first commit

This commit is contained in:
Alexander Taborda Acosta
2026-08-07 19:53:30 -05:00
commit f04c496f95
55 changed files with 2687 additions and 0 deletions
+41
View File
@@ -0,0 +1,41 @@
class TodosController < ApplicationController
before_action :set_todo, only: %i[show update destroy]
def index
render json: Todo.order(created_at: :desc)
end
def show
render json: @todo
end
def create
todo = Todo.new(todo_params)
todo.save!
render json: todo, status: :created
rescue ActiveRecord::RecordInvalid => error
render json: { errors: error.record.errors }, status: :unprocessable_entity
end
def update
@todo.update!(todo_params)
render json: @todo
rescue ActiveRecord::RecordInvalid => error
render json: { errors: error.record.errors }, status: :unprocessable_entity
end
def destroy
@todo.destroy!
head :no_content
end
private
def set_todo
@todo = Todo.find(params[:id])
end
def todo_params
params.expect(todo: %i[title completed])
end
end