1

だから私はbest_in_place gem [https://github.com/bernat/best_in_place]をセットアップしましたが、編集しようとした列が次のように見えtitle_name、エラーが発生すると次のように表示されると、少し問題に直面しています

'title_name can't be blank,is too short (minimum is 1 characters)'

宝石がエラー表示を処理する方法を編集したいので、を置き換えて_space少し作りますuser-friendly

編集:

Firebug経由で取得した応答を確認するのは次のとおりです。

{"title_name":["can't be blank","is too short (minimum is 1 characters)"]}

gem デモの場所 http://bipapp.heroku.com/users/59

["Last name has invalid length","Last name can't be blank"]

これは少し違います...

EDIT2:

post.rb

class Post < ActiveRecord::Base
  attr_accessible :post_id, :title_name, :total_items, :user_id

  validates :title_name, :presence => true, :length => { :in => 1..50 }

  belongs_to :user, :foreign_key => 'post_id'

  self.primary_key = :post_id

  def to_param
    "#{post_id}"
  end
end
4

2 に答える 2

0

これは実際には非常に単純で、best_in_pace gem とは何の関係もありません。

ファイルconfig/locales/en.ymlを次のように変更します。

en:
  activerecord:
    models:
      attributes:
        post:
          title_name: 'Title name'

これで、属性がビュー内title_nameの文字列に置き換えられるはず'Title name'です。

: 上記のメソッドはデフォルトをオーバーライドします。デフォルトを設定するわけではありませ

于 2012-08-19T22:31:05.990 に答える
0

解決:

保存が完了していない場合、best_in_place gem は次のメソッドを使用してエラーを表示することがわかりました

respond_with_bip(@user

format.jsonasに付いていた

format.json { respond_with_bip(@user) }

したがって、json経由でエラーを表示する方法をこのコードに置き換えると、問題が解決しました。

于 2012-08-20T07:35:26.537 に答える