0

我正在尝试使用 coffescript 作为 Rails 3.2.11 中的视图

我有 create.js.coffee 与以下几行:

is_valid = <%=@model.valid?%>

if is_valid
  res = confirm("Are you sure you want to continue?")
  if(res)
    <%=@model.activate%>
    window.location.href = "/blabla/models"
  else 
    return
else
  $('.form .field_with_errors').removeClass('field_with_errors')
  jw_funcs.respond_with_error(<%=@response_invalid%>)

问题是代码行 <%=@model.activate%>
每次都会执行。我认为这取决于 erb 引擎独立于咖啡引擎运行的事实;如果是这样,我该怎么做?

4

1 回答 1

1

你真的没想到这个咖啡代码会从客户端的浏览器调用你的模型方法,是吗?

包装@model.activate到它自己的控制器动作中,如果给出确认,它将由客户端调用。像这样的东西:

res = confirm("Are you sure you want to continue?")
if(res)
  $.ajax('/models/1234/activate', ...)
else 
  return
于 2013-02-19T12:00:07.917 回答