Skip to content

Instantly share code, notes, and snippets.

@KaraAJC
Last active October 26, 2017 16:05
Show Gist options
  • Save KaraAJC/78ac4dcc50f9735338a8 to your computer and use it in GitHub Desktop.
Save KaraAJC/78ac4dcc50f9735338a8 to your computer and use it in GitHub Desktop.
Kara Crud cheatSheet
# READ ---------------------------------
## list all users (index)
get "/users" do
@users = User.all
erb :"users/index"
end
## show one user by id (show)
## THIS ROUTE SHOULD BE FURTHER DOWN, TO PREVENT '/new' from being captured by '/:id'
get "/users/:id" do
@user = User.find(params[:id])
erb :"users/show"
end
# CREATE --------------------------------
# show the form to create a new user (new)
get "/users/new" do
erb :"users/new"
end
# create a new user record (create)
post "/users" do
@user = User.new(params[:user])
if @user.save
#flash message "user created successfully"
redirect "/users" #or "users/#{@user.id}"
else
#flash #{@user.errors}
erb :"users/new"
end
end
# UPDATE ------------------------------------
# show the form to edit a user (edit)
get "/users/:id/edit" do
@user = User.find(params[:id])
erb :"/users/edit"
end
# update the user by id (update)
put "/users/:id" do
@user = User.find(params[:id])
if @user.update(params[:user])
redirect "/users/#{@user.id}"
#flash message "user updated successfully"
else
erb :"users/edit"
#flash message #{@user.errors}
end
end
# DELETE ------------------------------------
# delete a user by id (destroy)
delete "/users/:id" do
user = User.find(params[:id])
user.delete
redirect "/users"
#flash message "user deleted successfully"
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment