hi,
I tried to redirect rails to show action by passing controller, action,
and params. However, rails ignores the name of action totally!
what I got is http://mysite/controllername/paramId
so i have error message…
here is the action code I used:
def update
@tip = current_user.tips.find(params[:id])
@tip.attributes = params[:tip]
@tip.category_ids = params[:categories]
@tip.tag_with(params[:tags]) if params[:tags]
if @tip.save
flash[:notice] = 'Tip was successfully updated.'
redirect_to :controller=>'tips', :action => 'show', :id =>
@tip.permalink
else
render :action => ‘edit’
end
end
John U. wrote:
hi,
I tried to redirect rails to show action by passing controller, action,
and params. However, rails ignores the name of action totally!
what I got is http://mysite/controllername/paramId
def update
@tip = current_user.tips.find(params[:id])
@tip.attributes = params[:tip]
@tip.category_ids = params[:categories]
@tip.tag_with(params[:tags]) if params[:tags]
if @tip.save
flash[:notice] = 'Tip was successfully updated.'
redirect_to :controller=>'tips', :action => 'show', :id =>
@tip.permalink
else
render :action => ‘edit’
end
end
you can try redirect_to(tip_path(@tip))
Amar D.
http://railstech.com
On Jun 11, 11:15 pm, John U. [email protected] wrote:
hi,
I tried to redirect rails to show action by passing controller, action,
and params. However, rails ignores the name of action totally!
what I got ishttp://mysite/controllername/paramId
With a normal set of restful routes (ie if you’ve got
map.resources :tips in your routes files), the normal show url for the
tip with id 123 IS /tips/123
Fred