'Updates this record from the trakt media object `trakt_movie` returned by the trakt api.'

def update(self, trakt_movie, session):

    if (self.id and (self.id != trakt_movie[u'ids'][u'trakt'])):
        raise Exception(u'Tried    to    update    db    movie    with    different    movie    data')
    elif (not self.id):
        self.id = trakt_movie[u'ids'][u'trakt']
    self.slug = trakt_movie[u'ids'][u'slug']
    self.imdb_id = trakt_movie[u'ids'][u'imdb']
    self.tmdb_id = trakt_movie[u'ids'][u'tmdb']
    for col in [u'title', u'overview', u'runtime', u'rating', u'votes', u'language', u'tagline', u'year', u'trailer', u'homepage']:
        setattr(self, col, trakt_movie.get(col))
    if trakt_movie.get(u'released'):
        self.released = dateutil_parse(trakt_movie.get(u'released'), ignoretz=True).date()
    self.updated_at = dateutil_parse(trakt_movie.get(u'updated_at'), ignoretz=True)
    self.genres = [TraktGenre(name=g.replace(u'    ', u'-')) for g in trakt_movie.get(u'genres', [])]
    self.cached_at = datetime.now()
    self.translation_languages = trakt_movie.get(u'available_translations', [])
