Skip to content

Instantly share code, notes, and snippets.

@jachenry
Created March 25, 2009 19:12
Show Gist options
  • Save jachenry/85648 to your computer and use it in GitHub Desktop.
Save jachenry/85648 to your computer and use it in GitHub Desktop.
class UsersController < ApplicationController
# GET /users
# GET /users.xml
# GET /users.fxml
def index
@users = User.find(:all)
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @users }
format.fxml { render :fxml => @users.to_fxml(:methods => [:attachment_url]) }
end
end
# GET /users/1
# GET /users/1.xml
# GET /users/1.fxml
def show
@user = User.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @user }
format.fxml { render :fxml => @user.to_fxml(:methods => [:attachment_url]) }
end
end
# GET /users/new
# GET /users/new.xml
def new
@user = User.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @user }
end
end
# GET /users/1/edit
def edit
@user = User.find(params[:id])
end
# POST /users
# POST /users.xml
# POST /users.fxml
def create
@user = User.new(params[:user])
respond_to do |format|
if @user.save
flash[:notice] = 'User was successfully created.'
format.html { redirect_to(@user) }
format.xml { render :xml => @user, :status => :created, :location => @user }
format.fxml { render :fxml => @user.to_fxml(:methods => [:attachment_url]) }
else
format.html { render :action => "new" }
format.xml { render :xml => @user.errors, :status => :unprocessable_entity }
format.fxml { render :fxml => @user.errors }
end
end
end
# PUT /users/1
# PUT /users/1.xml
# PUT /users/1.fxml
def update
begin
@user = User.find(params[:id])
@saved = @user.update_attributes(params[:user])
rescue
@user = User.new(params[:user])
@user.id = params[:id]
@saved = @user.save
end
respond_to do |format|
if @saved
flash[:notice] = 'User was successfully updated.'
format.html { redirect_to(@user) }
format.xml { head :ok }
format.fxml { render :fxml => @user.to_fxml(:methods => [:attachment_url]) }
else
format.html { render :action => "edit" }
format.xml { render :xml => @user.errors, :status => :unprocessable_entity }
format.fxml { render :fxml => @user.errors }
end
end
end
# DELETE /users/1
# DELETE /users/1.xml
# DELETE /users/1.fxml
def destroy
@user = User.find(params[:id])
@user.destroy
respond_to do |format|
format.html { redirect_to(users_url) }
format.xml { head :ok }
format.fxml { render :fxml => @user }
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment