[Question] How to show models attributes' value in validation message?

Say I have a model with a validation in User model like this:

Class User < ActiveRecord::Base
  validates_uniqueness_of :name,
                          :message=>"user has already exist!"
end

As you can see, I want to write my own error message for this
validation.
And I get this error message in Controller like this:

Class Login < ActiveController::Base
  def create_user
    begin
      @user = User.new(:name=>params[:name])
      @user.save!
    rescue
      if @user.errors.blank?
        flash.now[:notice_err] = "Database error!"
      else
        temp = []
        @user.errors.each{|err| temmp << err[1]}
        flash.now[:notice_err] = "<ul><li>"+temp.join("</li><li>")+"</

</ul>"

      end
    else
      flash.now[:notice] = "<ul><li>User #{params[:name]} created!</

</ul>"

    end
  end
end

Everything goes on well for now.
However, if I want to show the 'error user name' in the validation
message like this

Class User < ActiveRecord::Base
  validates_uniqueness_of :name,
                          :message=>"user #{self.name} has already
exist!"
end

It cannot pass, and the following error shows out:

undefined method 'name' in model

So my question is "How can I get the value of attributes in a model
validation helper?"
Are there anyone having any idea on this?

boblu wrote:

Class User < ActiveRecord::Base
  validates_uniqueness_of :name,
                          :message=>"user #{self.name} has already
exist!"
end

It cannot pass, and the following error shows out:
undefined method 'name' in model

:message=>"user #{name} has already
or
:message=>"user #{attributes[:name] || @name} has already
or
write your own validation method

Thank you for your reply.
I have tried two of what your suggested.

":message=>"user #{name} has already " shows "user has already"
the #{name} will just be skipped though I had set a value in the model
object.

":message=>"user #{@name} has already" shows error message "@name not
defined"

I will try this
:message=>"user #{attributes[:name]} has already
and I will tell you the result here.

Anyway, thank you.