我尝试通过传递控制器、操作和参数来重定向Rails到显示操作。然而,Rails完全忽略了操作的名称!
我得到的是 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