Django.db.utils.DataError: значение слишком длинное для типа character varying(50)
У меня есть форма регистрации в моем приложении Django, развернутом на Heroku.
Все работает нормально, за исключением одной вещи.
Когда я пытаюсь добавить новые данные в базу данных, получая данные из моей формы регистрации, она не добавляет данные.
В журналах моего Heroku показано следующее:
django.db.utils.DataError: value too long for type character varying(50)
Из этого я понял, что любое поле моей модели имеет максимальную длину 50, а я даю данным больше, чем это ограничение. -может быть возможно
Но когда я изменил максимальную длину с 50 на 150 и попытался перенести изменения в Heroku с помощью heroku run python manage.py migrate
После создания миграций с помощью метода makemigrations, в консоли появляется следующая ошибка:
File "/app/manage.py", line 22, in <module>
main()
File "/app/manage.py", line 18, in main
execute_from_command_line(sys.argv)
File "/app/.heroku/python/lib/python3.10/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line
utility.execute()
File "/app/.heroku/python/lib/python3.10/site-packages/django/core/management/__init__.py", line 440, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/app/.heroku/python/lib/python3.10/site-packages/django/core/management/base.py", line 414, in run_from_argv
self.execute(*args, **cmd_options)
File "/app/.heroku/python/lib/python3.10/site-packages/django/core/management/base.py", line 460, in execute
output = self.handle(*args, **options)
File "/app/.heroku/python/lib/python3.10/site-packages/django/core/management/base.py", line 98, in wrapped
res = handle_func(*args, **kwargs)
File "/app/.heroku/python/lib/python3.10/site-packages/django/core/management/commands/migrate.py", line 290, in handle
post_migrate_state = executor.migrate(
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/migrations/executor.py", line 131, in migrate
state = self._migrate_all_forwards(
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/migrations/executor.py", line 163, in _migrate_all_forwards
state = self.apply_migration(
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/migrations/executor.py", line 248, in apply_migration
state = migration.apply(state, schema_editor)
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/migrations/migration.py", line 131, in apply
operation.database_forwards(
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/migrations/operations/fields.py", line 108, in database_forwards
schema_editor.add_field(
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/backends/base/schema.py", line 599, in add_field
definition, params = self.column_sql(model, field, include_default=True)
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/backends/base/schema.py", line 345, in column_sql
" ".join(
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/backends/base/schema.py", line 296, in _iter_column_sql
default_value = self.effective_default(field)
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/backends/base/schema.py", line 410, in effective_default
return field.get_db_prep_save(self._effective_default(field), self.connection)
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/backends/base/schema.py", line 388, in _effective_default
default = field.get_default()
File "/app/.heroku/python/lib/python3.10/site-packages/django/db/models/fields/__init__.py", line 918, in get_default
return self._get_default()
TypeError: uuid3() missing 2 required positional arguments: 'namespace' and 'name'
Опять же из того, что я понял, uuid3 не хватает некоторых аргументов, но дело в том, что я не использовал UUID нигде в своем проекте.
В общем, у меня есть некоторые ошибки в моих моделях, но я не могу перенести изменения на Heroku из-за этой ошибки. Что я могу сделать?
Моя модель:
class NewUser(models.Model):
models.SlugField(max_length=255)
id = models.AutoField(primary_key=True)
unique_id = models.CharField(max_length=21,)
firstName = models.CharField(max_length=150, default=None)
lastName = models.CharField(max_length=150, default=None)
userEmail = models.CharField(max_length=150, default=None)
userPassword = models.CharField(max_length=150, default=None)
Если вам нужен какой-либо другой файл, который вы можете упомянуть, я отредактирую ответ соответствующим образом.