'Datastore representation of this property.
Looks for this property in the given model instance, and returns the proper
datastore representation of the value that can be stored in a datastore
entity.  Most critically, it will fetch the datastore key value for
reference properties.
Some properies (e.g. DateTimeProperty, UserProperty) optionally update their
value on every put(). This call must return the current value for such
properties (get_updated_value_for_datastore returns the new value).
Args:
model_instance: Instance to fetch datastore value from.
Returns:
Datastore representation of the model value in a form that is
appropriate for storing in the datastore.'

def get_value_for_datastore(self, model_instance):

    return self.__get__(model_instance, model_instance.__class__)
