forked from 0x2620/pandora
key cleanup
This commit is contained in:
parent
fbd3dee4d3
commit
f7bc932cdd
2 changed files with 17 additions and 20 deletions
|
@ -49,13 +49,6 @@ def parseCondition(condition):
|
||||||
if keyType(k) == "string":
|
if keyType(k) == "string":
|
||||||
in_find=True
|
in_find=True
|
||||||
if op == '=':
|
if op == '=':
|
||||||
'''
|
|
||||||
if k in ('director', 'country', 'language', 'genre',
|
|
||||||
'keywords', 'location', 'writer', 'producer',
|
|
||||||
'editor', 'cinematographer'):
|
|
||||||
k = '%s__icontains' % k
|
|
||||||
v = u'|%s|'%v
|
|
||||||
'''
|
|
||||||
if k in models.Movie.facet_keys:
|
if k in models.Movie.facet_keys:
|
||||||
in_find=False
|
in_find=False
|
||||||
v = models.Movie.objects.filter(facets__key=k, facets__value=v)
|
v = models.Movie.objects.filter(facets__key=k, facets__value=v)
|
||||||
|
|
|
@ -83,7 +83,7 @@ def poster_path(f):
|
||||||
return os.path.join('poster', url_hash[:2], url_hash[2:4], url_hash[4:6], name)
|
return os.path.join('poster', url_hash[:2], url_hash[2:4], url_hash[4:6], name)
|
||||||
|
|
||||||
class Movie(models.Model):
|
class Movie(models.Model):
|
||||||
person_keys = ('director', 'writer', 'producer', 'editor', 'cinematographer')
|
person_keys = ('director', 'writer', 'producer', 'editor', 'cinematographer', 'actor', 'character')
|
||||||
facet_keys = person_keys + ('country', 'language', 'genre', 'keyword')
|
facet_keys = person_keys + ('country', 'language', 'genre', 'keyword')
|
||||||
|
|
||||||
created = models.DateTimeField(auto_now_add=True)
|
created = models.DateTimeField(auto_now_add=True)
|
||||||
|
@ -257,10 +257,13 @@ class Movie(models.Model):
|
||||||
f.year = self.get('year', '')
|
f.year = self.get('year', '')
|
||||||
|
|
||||||
for key in self.facet_keys:
|
for key in self.facet_keys:
|
||||||
setattr(f, key, '|%s|'%'|'.join(self.get(plural_key(key), [])))
|
if key == 'actor':
|
||||||
|
values = [i[0] for i in self.get('actor', [])]
|
||||||
f.actor = '|%s|'%'|'.join([i[0] for i in self.get('actor', [])])
|
elif key == 'character':
|
||||||
f.character = '|%s|'%'|'.join([stripTagsl(i[1]) for i in self.get('actor', [])])
|
values = [i[1] for i in self.get('actor', [])]
|
||||||
|
else:
|
||||||
|
values = self.get(plural_key(key), [])
|
||||||
|
setattr(f, key, '|%s|'%'|'.join(values))
|
||||||
|
|
||||||
f.summary = self.get('plot', '') + self.get('plot_outline', '')
|
f.summary = self.get('plot', '') + self.get('plot_outline', '')
|
||||||
f.trivia = ' '.join(self.get('trivia', []))
|
f.trivia = ' '.join(self.get('trivia', []))
|
||||||
|
@ -315,12 +318,9 @@ class Movie(models.Model):
|
||||||
|
|
||||||
s.runtime = self.get('runtime', 0)
|
s.runtime = self.get('runtime', 0)
|
||||||
|
|
||||||
s.keywords = len(self.get('keywords', []))
|
for key in ('keywords', 'genres', 'cast', 'summary', 'trivia', 'connections'):
|
||||||
s.genre = len(self.get('genres', []))
|
setattr(s, key, len(self.get(key, '')))
|
||||||
s.cast = len(self.get('cast', []))
|
|
||||||
s.summary = len(self.get('plot', '').split())
|
|
||||||
s.trivia = len(self.get('trivia', []))
|
|
||||||
s.connections = len(self.get('connections', []))
|
|
||||||
s.movieId = self.movieId.replace('0x', 'xx')
|
s.movieId = self.movieId.replace('0x', 'xx')
|
||||||
s.rating = self.get('rating', -1)
|
s.rating = self.get('rating', -1)
|
||||||
s.votes = self.get('votes', -1)
|
s.votes = self.get('votes', -1)
|
||||||
|
@ -352,10 +352,14 @@ class Movie(models.Model):
|
||||||
s.save()
|
s.save()
|
||||||
|
|
||||||
def updateFacets(self):
|
def updateFacets(self):
|
||||||
#"year", is extra is it?
|
|
||||||
#FIXME: what to do with Unkown Director, Year, Country etc.
|
#FIXME: what to do with Unkown Director, Year, Country etc.
|
||||||
for key in self.facet_keys:
|
for key in self.facet_keys:
|
||||||
current_values = self.get(plural_key(key), [])
|
if key == 'actor':
|
||||||
|
current_values = [i[0] for i in self.get('actor', [])]
|
||||||
|
elif key == 'character':
|
||||||
|
current_values = [i[1] for i in self.get('actor', [])]
|
||||||
|
else:
|
||||||
|
current_values = self.get(plural_key(key), [])
|
||||||
saved_values = [i.value for i in Facet.objects.filter(movie=self, key=key)]
|
saved_values = [i.value for i in Facet.objects.filter(movie=self, key=key)]
|
||||||
removed_values = filter(lambda x: x not in current_values, saved_values)
|
removed_values = filter(lambda x: x not in current_values, saved_values)
|
||||||
if removed_values:
|
if removed_values:
|
||||||
|
|
Loading…
Reference in a new issue