home
  • Blog
  • Home
  • Projects
    • Ember
    • EmberData
    • Ember CLI
2.18
  • Packages
    • ember-data
  • Classes
    • DS.AbortError
    • DS.Adapter
    • DS.AdapterError
    • DS.AdapterPopulatedRecordArray
    • DS.BelongsToReference
    • DS.BooleanTransform
    • DS.BuildURLMixin
    • DS.ConflictError
    • DS.DateTransform
    • DS.EmbeddedRecordsMixin
    • DS.Errors
    • DS.FilteredRecordArray
    • DS.ForbiddenError
    • DS.HasManyReference
    • DS.InvalidError
    • DS.JSONAPIAdapter
    • DS.JSONAPISerializer
    • DS.JSONSerializer
    • DS.ManyArray
    • DS.Model
    • DS.NotFoundError
    • DS.NumberTransform
    • DS.PromiseArray
    • DS.PromiseManyArray
    • DS.PromiseObject
    • DS.RESTAdapter
    • DS.RESTSerializer
    • DS.RecordArray
    • DS.RecordReference
    • DS.RootState
    • DS.Serializer
    • DS.ServerError
    • DS.Store
    • DS.StringTransform
    • DS.TimeoutError
    • DS.Transform
    • DS.UnauthorizedError
    • Ember.Inflector

Class DS.BooleanTransform


Extends: DS.Transform
Defined in: addon/transforms/boolean.js:4
Module: ember-data

The DS.BooleanTransform class is used to serialize and deserialize boolean attributes on Ember Data record objects. This transform is used when boolean is passed as the type parameter to the DS.attr function.

Usage

app/models/user.js
import DS from 'ember-data';

export default DS.Model.extend({
  isAdmin: DS.attr('boolean'),
  name: DS.attr('string'),
  email: DS.attr('string')
});

By default the boolean transform only allows for values of true or false. You can opt into allowing null values for boolean attributes via DS.attr('boolean', { allowNull: true })

app/models/user.js
import DS from 'ember-data';

export default DS.Model.extend({
  email: DS.attr('string'),
  username: DS.attr('string'),
  wantsWeeklyEmail: DS.attr('boolean', { allowNull: true })
});


Methods

deserialize (serialized, options) :

Module: ember-data

Inherited from DS.Transform addon/transforms/transform.js:92

serialized

The serialized value

options

hash of options passed to DS.attr

returns

The deserialized value

When given a serialize value from a JSON object this method must return the deserialized value for the record attribute.

Example

deserialize(serialized, options) {
  return empty(serialized) ? null : Number(serialized);
}

serialize (deserialized, options) :

Module: ember-data

Inherited from DS.Transform addon/transforms/transform.js:71

deserialized

The deserialized value

options

hash of options passed to DS.attr

returns

The serialized value

When given a deserialized value from a record attribute this method must return the serialized value.

Example

import { isEmpty } from '@ember/utils';

serialize(deserialized, options) {
  return isEmpty(deserialized) ? null : Number(deserialized);
}
On this page


Methods

  • deserialize
  • serialize
Team Sponsors Security Legal Branding Community Guidelines
Twitter GitHub Discord Mastodon

If you want help you can contact us by email, open an issue, or get realtime help by joining the Ember Discord.

© Copyright 2025 - Tilde Inc.
Ember.js is free, open source and always will be.


Ember is generously supported by
blue Created with Sketch.