migration update

remotes/origin/stage6
Alexander Burdeiny 9 years ago
parent 1e51eadd38
commit c2e018b7a4
  1. 38
      emencia/django/newsletter/migrations/0011_update_contact.py
  2. 5
      fabfile.py

@ -24,24 +24,28 @@ class Migration(DataMigration):
r_cities = set(City.objects.filter(country_id=russia).values_list('pk', flat=True))
# with transaction.commit_manually():
for contact in Contact.objects.prefetch_related('contactsettings').all():
cities = set(contact.contactsettings.city.values_list('pk', flat=True))
countries = set(contact.contactsettings.country.values_list('pk', flat=True))
themes = set(contact.contactsettings.theme.values_list('pk', flat=True))
try:
cities = set(contact.contactsettings.city.values_list('pk', flat=True))
countries = set(contact.contactsettings.country.values_list('pk', flat=True))
themes = set(contact.contactsettings.theme.values_list('pk', flat=True))
# moscow
contact.moscow = True if moscow in cities else False
cities.discard(moscow)
# cities russia
_r_cities = cities.intersection(r_cities)
contact.r_cities = _r_cities
# russia
contact.russia = True if russia in countries else False
countries.discard(russia)
# countries
contact.f_countries = countries
# themes
contact.themes = themes
contact.save()
# moscow
contact.moscow = True if moscow in cities else False
cities.discard(moscow)
# cities russia
_r_cities = cities.intersection(r_cities)
contact.r_cities = _r_cities
# russia
contact.russia = True if russia in countries else False
countries.discard(russia)
# countries
contact.f_countries = countries
# themes
contact.themes = themes
contact.save()
except Exception as e:
print('Exception')
print(e)
# transaction.commit()
def backwards(self, orm):

5
fabfile.py vendored

@ -230,6 +230,11 @@ def t1580():
@ticket
def mailing():
with cd(REMOTE_HOME_DIR):
run('python manage.py migrate newsletter 0011 --fake')
run('python manage.py migrate newsletter')
run('python manage.py migrate newsletter 0010 --fake')
run('python manage.py migrate newsletter 0011 --fake')
run('python manage.py migrate newsletter --fake')
run('python manage.py migrate')
run('python manage.py newsletter_create_dailymail')

Loading…
Cancel
Save