Django модель FileField с динамическим расположением хранилища при миграции
Мне нужно хранить файл вне MEDIA_ROOT
, поэтому я использую этот подход
from django.core.files.storage import FileSystemStorage
from django.db import models
from myproject.settings import SOME_DIR
fs = FileSystemStorage(location=SOME_DIR)
class Car(models.Model):
photo = models.ImageField(storage=fs)
Теперь, когда я makemigrations
, результат выглядит примерно так:
migrations.AlterField(
model_name='car',
name='photo',
field=models.ImageField(storage=django.core.files.storage.FileSystemStorage(location='C:/temp/documents')),
),
Проблема в том, что мой локальный путь к SOME_DIR
жестко закодирован в файле миграции. Поэтому, когда я переношу его на рабочий сервер, где SOME_DIR
находится /home/xyz/documents
, я получаю предупреждение:
Ваши модели в приложении(ях): 'x' имеют изменения, которые еще не отражены в миграции, и поэтому не будут применены.
Есть ли способ подавить это предупреждение или изменить мой код, чтобы он не использовал динамический путь расположения в файле миграции? Я использую Django 4.2, но я думаю, что это одинаково во всех версиях.
Большое спасибо за помощь