kopia lustrzana https://dev.funkwhale.audio/funkwhale/funkwhale
58 wiersze
1.6 KiB
Python
58 wiersze
1.6 KiB
Python
# -*- coding: utf-8 -*-
|
|
from __future__ import unicode_literals
|
|
|
|
from django.db import migrations, models
|
|
|
|
|
|
def rename_files(apps, schema_editor):
|
|
"""
|
|
This migration script is utterly broken and made me redownload all my audio files.
|
|
So next time -> Write some actual tests before running a migration script
|
|
on thousand of tracks...
|
|
"""
|
|
return
|
|
# TrackFile = apps.get_model("music", "TrackFile")
|
|
# qs = TrackFile.objects.select_related(
|
|
# 'track__album__artist', 'track__artist')
|
|
# total = len(qs)
|
|
#
|
|
#
|
|
# for i, tf in enumerate(qs):
|
|
# try:
|
|
# new_name = '{} - {} - {}'.format(
|
|
# tf.track.artist.name,
|
|
# tf.track.album.title,
|
|
# tf.track.title,
|
|
# )
|
|
# except AttributeError:
|
|
# new_name = '{} - {}'.format(
|
|
# tf.track.artist.name,
|
|
# tf.track.title,
|
|
# )
|
|
# rename_file(
|
|
# instance=tf,
|
|
# field_name='audio_file',
|
|
# allow_missing_file=True,
|
|
# new_name=new_name)
|
|
# print('Renamed file {}/{} (new name: {})'.format(
|
|
# i + 1, total, tf.audio_file.name
|
|
# ))
|
|
|
|
|
|
def rewind(apps, schema_editor):
|
|
pass
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
dependencies = [("music", "0010_auto_20160920_1742")]
|
|
|
|
operations = [
|
|
migrations.AlterField(
|
|
model_name="trackfile",
|
|
name="audio_file",
|
|
field=models.FileField(upload_to="tracks/%Y/%m/%d", max_length=255),
|
|
),
|
|
migrations.RunPython(rename_files, rewind),
|
|
]
|