First off apologies for a rails question on the ruby list, but the  
rails mailing list sign-on page seems to be down at the moment so I  
thought I would look for help here.

Bearing in mind I am very new to Rails... I have a create action:

def create
     @post = Post.new(params[:post])
     if @post.save
       @post.tag_with(params[:tag_list])
       flash[:notice] = 'Post was successfully created.'
       redirect_to :action => 'list'
     else
       @tag_list = params[:tag_list]
       render :action => 'new'
     end
   end

if the @post.save returns false the user is presented with the new  
view again:

def new
     @tags = Tag.find(:all)
     @post = Post.new
   end

On the initial call to new the new view displays a list of tags from  
the array @tags. If the create action fails and the render :action =>  
'new' line is executed the @tags variable becomes nill

How come this happens? and is there a 'clean' was of keeping the  
@tags variable as it should be no matter how many times the create  
action fails??

Any help will be gratefully received.

David.