class UserRoleModel < UserAttributeModel # Destroy the i18n_variables def destroy_i18n_variables self.i18n_variable.destroy rescue nil self.attribute_models.each do |attr| attr.destroy_i18n_variable end end # Update or create the i18n_variable record def i18n_variable=(attr) if self.i18n_variable_id self.i18n_variable.update_attributes(attr) rescue nil else var = I18nVariable.new(attr.merge({:key => self.key, :document_class => self.class})) var.save self.i18n_variable_id = var.id end end # Get the i18n_variable def i18n_variable @i18n_variable ||= I18nVariable.find(self.i18n_variable_id) rescue nil end end