无法使用 best_in_place gem 显示验证错误



我正在使用Rails 3.0.9的best_in_place gem。看来我一切都好了。我按照安装说明,我可以点击一个项目,编辑它,并保存在一个地方与ajax。

但是,当测试验证功能但放入虚假数据时,错误消息不会显示。

我不确定这是否应该通过javascript神奇地完成,或者如果我应该提供某种div标签或可以显示错误消息的东西。

检查到这个在firebug,我得到正确的json响应。在我的例子中,我可以看到

["债务长度无效"]

但这不会在任何地方呈现

还有什么我需要放在视图渲染验证错误?它应该通过purr.js显示。除了将javascript文件放入公共目录,在application.js中初始化best_in_place并将

<p>
  <b>Debts:</b>
  <%= best_in_place @prospect, :debts, :type => :input %>
</p>

在视图中?

你的问题听起来就像我的:仔细检查Railscast #302,我注意到错误消息正在打印,但在页面的左下角,很难看到,很容易错过

列出该页面的purr CSS代码将格式化并在网页上更清楚地显示。

你应该添加正确的控制器动作

def update
  ..
  respond_to do |format|   
    format.json { render json: @prospect } 
  end
end  

或使用respond_with_bip帮助器。不要忘记定义。Purr CSS类,"Best In Place"gem使用jQuery Purr插件来显示错误消息:

.purr {
  position: fixed;
  top: 30px;
  right: 100px;
  width: 250px;
  padding: 20px;
  background-color: #FCC;
  border: solid 2px #C66;
  &:first-letter { text-transform: uppercase; }
}

保重添加best_in_place。Purr插件代替jquery。Purr在application.js中。

//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require best_in_place.purr
//= require best_in_place
//= require_tree .

最新更新