Rials varable becomes nill on a render

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.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs