Show usefull error message for uniqueness_of_name with acts_as_paranoid.
Fixed #88 Conflicts: app/models/ordergroup.rb
This commit is contained in:
parent
0b66fe6d62
commit
3fb5c313ee
6 changed files with 29 additions and 6 deletions
|
|
@ -16,7 +16,7 @@ class Ordergroup < Group
|
|||
has_many :orders, :through => :group_orders
|
||||
|
||||
validates_numericality_of :account_balance, :message => I18n.t('ordergroups.model.invalid_balance')
|
||||
validate :uniqueness_of_members
|
||||
validate :uniqueness_of_name, :uniqueness_of_members
|
||||
|
||||
after_create :update_stats!
|
||||
|
||||
|
|
@ -106,6 +106,16 @@ class Ordergroup < Group
|
|||
errors.add :user_tokens, I18n.t('ordergroups.model.error_single_group', :user => user.nick) if user.groups.where(:type => 'Ordergroup').size > 1
|
||||
end
|
||||
end
|
||||
|
||||
# Make sure, the name is uniq, add usefull message if uniq group is already deleted
|
||||
def uniqueness_of_name
|
||||
id = new_record? ? '' : self.id
|
||||
group = Ordergroup.with_deleted.where('groups.id != ? AND groups.name = ?', id, name).first
|
||||
if group.present?
|
||||
message = group.deleted? ? :taken_with_deleted : :taken
|
||||
errors.add :name, message
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue