0

我在弄清楚如何使用 rails 3 ujs ajax 在我的条目表单上处理成功时遇到了一些问题。

如果有错误,我有一个 create.js.erb ,它会alert(j(@entry.errors.full_messages)起作用。但是如果没有错误,表单不会重定向(因为我在对话框中呈现),我希望 js 发出警报(“成功”)并关闭对话框。(使用fancybox 2)。

你能给我一些使用 rails 3 ujs 和 ajax 的指示吗?

4

1 回答 1

0

一种方法是在控制器级别而不是视图上识别和处理错误。

def create
  @entry = something
  if @entry.save
    @notice = "Success message!"
    respond_to :js # render default create.js.erb
  else
    respond_to :js { render 'create_error.js.erb' }
  end
end

// create.js.erb
$("#dialog").close();
alert("<%= @notice %>">;

// create_error.js.erb
alert(j(@entry.errors.full_messages);
于 2013-06-03T17:10:20.777 回答