Skip to content

Cannot make migrations: ValueError: Cannot serialize: <django_selectel_storage.storage.SelectelStorage #14

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
arsenyvolodko opened this issue Dec 5, 2024 · 0 comments

Comments

@arsenyvolodko
Copy link

arsenyvolodko commented Dec 5, 2024

Hello, i'm trying to set storage for specific model, but cannot make migrations:

settings.py:

SELECTEL_STORAGES = {
    'default': {
        'USERNAME': 'xxxx_user',
        'PASSWORD': 'p455w0rd',
        'CONTAINER': 'my-data',
    }
}

SELECTEL_STORAGE = SelectelStorage('default')

models.py:

class PhotoModel(models.Model):
    photo = models.ImageField(storage=SELECTEL_STORAGE)

after command python3 manage.py makemigrations got an error:

Traceback (most recent call last):
  File "/Users/benomen/PycharmProjects/aicap-predict/backend/manage.py", line 24, in <module>
    main()
  File "/Users/benomen/PycharmProjects/aicap-predict/backend/manage.py", line 20, in main
    execute_from_command_line(sys.argv)
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
    utility.execute()
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/core/management/__init__.py", line 436, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/core/management/base.py", line 413, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/core/management/base.py", line 459, in execute
    output = self.handle(*args, **options)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/core/management/base.py", line 107, in wrapper
    res = handle_func(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/core/management/commands/makemigrations.py", line 259, in handle
    self.write_migration_files(changes)
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/core/management/commands/makemigrations.py", line 364, in write_migration_files
    migration_string = writer.as_string()
                       ^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/db/migrations/writer.py", line 141, in as_string
    operation_string, operation_imports = OperationWriter(operation).serialize()
                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/db/migrations/writer.py", line 99, in serialize
    _write(arg_name, arg_value)
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/db/migrations/writer.py", line 51, in _write
    arg_string, arg_imports = MigrationWriter.serialize(item)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/db/migrations/writer.py", line 287, in serialize
    return serializer_factory(value).serialize()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/db/migrations/serializer.py", line 42, in serialize
    item_string, item_imports = serializer_factory(item).serialize()
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/db/migrations/serializer.py", line 231, in serialize
    return self.serialize_deconstructed(path, args, kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/db/migrations/serializer.py", line 96, in serialize_deconstructed
    arg_string, arg_imports = serializer_factory(arg).serialize()
                              ^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/benomen/Library/Caches/pypoetry/virtualenvs/non-package-mode-bHpb9l2a-py3.12/lib/python3.12/site-packages/django/db/migrations/serializer.py", line 397, in serializer_factory
    raise ValueError(
ValueError: Cannot serialize: <django_selectel_storage.storage.SelectelStorage object at 0x1068af320>
There are some values Django cannot serialize into migration files.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant