2013-07-20 2 views
0

В моем приложении у меня есть логическое значение в моей таблице авторов. Как проверить, сколько раз логическое значение может быть установлено на false?Как проверить логическое значение в Rails


код у меня сейчас не работает правильно

class Author < ActiveRecord::Base 

    validate :book_limit, :on => :update 
     def book_limit 
     if self.user.authors(:reload).count(:conditions => { :book => true }) >= 15 
      errors.add(:base, "Exceeds book limit: Book 15/15") 
     end 
     end 

end 

ответ

2

Я считаю, что это то, что вы хотите:

class Author < ActiveRecord::Base 
    validate :book_limit, :on => :update 

    def book_limit 
    if self.user.authors.where(book: true).count >= 15 
     errors.add(:base, "Exceeds book limit: Book 15/15") 
    end 
    end 
end 
+0

идеально подходит, спасибо – goo

+0

@ Джон Вас должен принять ответ, если он решил вашу проблему –

+0

@MichaelSzyndel пытался, но SO делает это там, где мне нужно подождать 15 минут, прежде чем делать это. – goo

Смежные вопросы