Пример #1
0
 def to_movie_model(self):
     mm = Movie(movieID=self.movieId)
     # update foreign key
     location = None
     if self.location:
         location = create_region(self.location, self.location_name, 'movie')
     # update m2m
     genres = []
     if self.subcates:
         for i in range(len(self.subcates)):
             subcate = self.subcates[i]
             subcate_name = ''
             if self.subcates_name:
                 try:
                     subcate_name = self.subcates_name[i]
                 except:
                     subcate_name = ''
             genre = create_genre(subcate, subcate_name, 'movie')
             genres.append(genre)
         #mm.subcategory.add(genres)
     
     manufacs = []
     if self.manufacturers:
         for i in range(len(self.manufacturers)):
             manufacturerName = self.manufacturers[i]
             manufac = create_manufacturer(manufacturerName, 'movie')
             manufacs.append(manufac)
         #mm.manufacturers.add(manufacs)
     
     coworkers = []
     if self.directors:
         for i in range(len(self.directors)):
             personName = self.directors[i]
             person = create_people(None, personName, 'director', 'movie')
             coworkers.append(person)
         #mm.directors.add(coworkers)
     
     casts = []
     if self.casts:
         for i in range(len(self.casts)):
             cast = self.casts[i]
             person = create_people(None, cast, 'cast', 'movie')
             casts.append(person)
         #mm.casts.add(casts)
     
     tags = []
     if self.tags:
         for i in range(len(self.tags)):
             the_tag = self.tags[i]
             tag = create_tag(the_tag, 'movie')
             tags.append(tag)
         #mm.tags.add(tags)
     
     # update fields
     mm.movie_name = self.movie_name
     if self.isSingle is not None:
         mm.is_single_movie = self.isSingle
     if self.imdb is not None:
         mm.IMDB_score = self.imdb
     if self.size is not None:
         mm.size = self.size
     if self.isHD is not None:
         mm.is_HD = self.isHD
     if self.release_year is not None:
         mm.release_year = self.release_year
     if self.isPayment:
         mm.payment = self.isPayment
     if self.isDrama:
         mm.movie_type = 'drama'
     elif self.isCinema:
         mm.movie_type = 'cinema'
     else:
         mm.movie_type = None
     mm.image_url = self.image_url
     if self.view_count is not None:
         mm.view_count = self.view_count
     
     return (mm, {
                  'location':location,
                 },
                 {'genres': genres, 
                  'manufacs': manufacs, 
                  'coworkers': coworkers, 
                  'casts': casts, 
                  'tags': tags,
                  })