1
モデルが許可されているフィールドの数と繭で検証することに問題があります。コクーンrails3を使用すると、私の場所にはリンクが多いネストされたフォームがあります。私はそれぞれの場所のリンクの数を制限する必要があるRails3 Cocoonネストされたフィールド数を確認する
は私location.rbモデル5.
をしなければならない、私はこの持っている:5つのリンクまで追加
class Location < ActiveRecord::Base
has_many :links
accepts_nested_attributes_for :links, :reject_if => lambda { |a| a[:link_name].blank? }, :allow_destroy => true
validate :check_link_count
...
def check_link_count
if self.links.count > 5
self.errors.add :base, "No more than 5 links allowed."
end
end
...
を、すべてが正常に動作します。
リンクを6つ追加して保存すると、エラーが発生します。また良い。
問題はリンクを削除しようとするときです。リンクが保存後に削除されたように見えます(私は思う)。したがって、すべてのフィールドを削除すると、私はまだエラーが発生します。
提案がありますか?検証する別の方法はありますか?
素晴らしい、それは簡単でした。 marked_for_destruction Sを読んでください。 – simonmorley