【发布时间】:2011-02-24 10:57:25
【问题描述】:
有一个简单的代码:
def new
if !logged_in?
respond_to do |format|
format.js {render "new_failed"}
return
end
end
article = Article.find params[:id]
@comment = article.comments.build
respond_to do |format|
format.js
end
end
当用户未登录时,应该呈现“new_failed”,但实际上,呈现的是“new”动作。
我什么时候输入logged_in?到方法结束:
def new
if !logged_in?
respond_to do |format|
format.js {render "new_failed"}
return
end
end
article = Article.find params[:id]
@comment = article.comments.build
respond_to do |format|
format.html # new.html.erb
format.js
end
end
它工作正常。
这是什么奇怪的行为?谁能解释一下?
谢谢。
【问题讨论】:
标签: ruby-on-rails model-view-controller view