kopia lustrzana https://dev.funkwhale.audio/funkwhale/funkwhale
41 wiersze
1.1 KiB
Python
41 wiersze
1.1 KiB
Python
# -*- coding: utf-8 -*-
|
|
"""
|
|
This migration is disabled until settings.MUSIC_USE_DENORMALIZATION is set to default=True
|
|
"""
|
|
from __future__ import unicode_literals
|
|
|
|
from django.db import migrations
|
|
from funkwhale_api.music.utils import guess_mimetype
|
|
|
|
|
|
def denormalize(apps, schema_editor):
|
|
Upload = apps.get_model("music", "Upload")
|
|
if not Upload.objects.count():
|
|
print('Skipping…')
|
|
|
|
from funkwhale_api.music.models import TrackActor, Library
|
|
libraries = Library.objects.all()
|
|
objs = []
|
|
total_libraries = len(libraries)
|
|
for i, library in enumerate(libraries):
|
|
print('[{}/{}] Populating permission table for library {}'.format(i+1, total_libraries, library.pk))
|
|
objs += TrackActor.get_objs(
|
|
library=library,
|
|
actor_ids=[],
|
|
upload_and_track_ids=[],
|
|
)
|
|
print('Commiting changes…')
|
|
TrackActor.objects.bulk_create(objs, batch_size=5000, ignore_conflicts=True)
|
|
|
|
|
|
|
|
def rewind(apps, schema_editor):
|
|
pass
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
dependencies = [("music", "0041_auto_20191021_1705")]
|
|
|
|
operations = [migrations.RunPython(denormalize, rewind)]
|