Ruby on rails 用&;紧急通知
我的一个控制器中有以下各项:Ruby on rails 用&;紧急通知,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我的一个控制器中有以下各项: def create photo.user = current_user if current_user flash[:notice] = "The photos was saved" if photo.save respond_with photo, :location => photo_path(photo) end 这段代码只有一个例外。如果我使用某种AJAX访问这个动作,然后访问另一个页面,就会显示flash通知。如何仅在响应时显示f
def create
photo.user = current_user if current_user
flash[:notice] = "The photos was saved" if photo.save
respond_with photo, :location => photo_path(photo)
end
这段代码只有一个例外。如果我使用某种AJAX访问这个动作,然后访问另一个页面,就会显示flash通知。如何仅在响应时显示flash通知:html?我想也许你可以传递一个:notice=>“my flash”给回复,但没有运气。使用如下:
respond_to do |format|
format.html { redirect_to photo_path(photo), :notice => 'The photos was saved') }
format.xml { render :xml => photo, :status => :created}
end
您可以设置如下条件:
flash[:notice] = "The photos was saved" if photo.save && !request.xhr?
另外,如果有一天您决定在响应AJAX请求时使用生成的通知,
你可以使用flash。放弃来清除flash。这是我以前的做法,但我正试图从respond\u转到,改为更简洁的respond\u with
。我不得不投反对票,因为答案没有试图回答海报上关于使用respond\u with
@lesterbebody的问题,但它确实提供了解决办法。这个问题可能是在答案之后编辑的(尽管我不确定两年前发生了什么)。我对否决票没有异议,但在你行使否决权之前,可能需要更多的思考。