我在视图上有一个javascript脚本,它通过post方法将数据提交给rails控制器:
$.post("/user_answers?user_answer[question_id]=" + gon.questions[questionNum]["id"] + "&correct=true")
基本上控制器会接受此帖并更新或创建新的user_answer。
def create
@user_answer = current_user.user_answers.find_or_initialize_by(answer_params)
# Handles box assignment based on correct or wrong answer
if params[:correct] == "true"
@user_answer.box = 1
elsif params[:correct] == "false"
@user_answer.box = 2
end
@user_answer.save
end
这很有效,除了我注意到控制器试图重定向到user_answers / create并返回错误,因为它不存在。这根本不会影响用户的体验,但它会毫无理由地向服务器发出额外请求。
问题是,我不想重定向到任何东西或刷新任何东西,因为帖子只需要更新记录。视图使用Javascript更新自身。如何删除.save或.create中的默认redirect_to操作?
答案 0 :(得分:1)
你可以投入
return false
您希望在您的操作中执行代码的任何地方停止