django-fixture-magic icon indicating copy to clipboard operation
django-fixture-magic copied to clipboard

dump_object fails on '*'

Open aguformoso opened this issue 6 years ago • 2 comments

The dump_object command fails when receiving '*', succeeds when receiving individual IDs.

$ ./manage dump_object service.model '*'
/service/venv/lib/python3.6/site-packages/psycopg2/__init__.py:144: UserWarning: The psycopg2 wheel package will be renamed from release 2.8; in order to keep installing from binary please use "pip install psycopg2-binary" instead. For details see: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi>.
  """)
Traceback (most recent call last):
  File "django/manage.py", line 15, in <module>
    execute_from_command_line(sys.argv)
  File "/service/venv/lib/python3.6/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
    utility.execute()
  File "/service/venv/lib/python3.6/site-packages/django/core/management/__init__.py", line 375, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/service/venv/lib/python3.6/site-packages/django/core/management/base.py", line 316, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/service/venv/lib/python3.6/site-packages/django/core/management/base.py", line 353, in execute
    output = self.handle(*args, **options)
  File "/service/venv/lib/python3.6/site-packages/fixture_magic/management/commands/dump_object.py", line 117, in handle
    add_to_serialize_list(objs)
UnboundLocalError: local variable 'objs' referenced before assignment

Python 3.6.3 Django==2.1 django-fixture-magic==0.1.3

aguformoso avatar Jan 07 '19 11:01 aguformoso

I am seeing something similar with UUIDs:

$ python manage.py dump_object receiving.Inventory '*'

Traceback (most recent call last):
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\fields\__init__.py", line 2392, in to_python
    return uuid.UUID(value)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\uuid.py", line 140, in __init__
    raise ValueError('badly formed hexadecimal UUID string')
ValueError: badly formed hexadecimal UUID string

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "manage.py", line 17, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\core\management\__init__.py", line 363, in execute_from_command_line
    utility.execute()
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\core\management\__init__.py", line 355, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\core\management\base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "c:\users\mike\.virtualenvs\pycharmprojects\iftsscheduledjobs\delmarerp\src\django-fixture-magic\fixture_magic\management\commands\dump_object.py", line 128, in handle
    add_to_serialize_list(objs)
  File "c:\users\mike\.virtualenvs\pycharmprojects\iftsscheduledjobs\delmarerp\src\django-fixture-magic\fixture_magic\utils.py", line 63, in add_to_serialize_list
    for obj in objs:
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\query.py", line 250, in __iter__
    self._fetch_all()
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\query.py", line 1102, in _fetch_all
    self._result_cache = list(self._iterable_class(self))
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\query.py", line 53, in __iter__
    results = compiler.execute_sql(chunked_fetch=self.chunked_fetch)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\sql\compiler.py", line 863, in execute_sql
    sql, params = self.as_sql()
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\sql\compiler.py", line 420, in as_sql
    where, w_params = self.compile(self.where) if self.where is not None else ("", [])
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\sql\compiler.py", line 373, in compile
    sql, params = node.as_sql(self, self.connection)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\sql\where.py", line 79, in as_sql
    sql, params = compiler.compile(child)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\sql\compiler.py", line 373, in compile
    sql, params = node.as_sql(self, self.connection)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\lookups.py", line 381, in as_sql
    return super(In, self).as_sql(compiler, connection)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\lookups.py", line 170, in as_sql
    rhs_sql, rhs_params = self.process_rhs(compiler, connection)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\lookups.py", line 368, in process_rhs
    sqls, sqls_params = self.batch_process_rhs(compiler, connection, rhs)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\lookups.py", line 240, in batch_process_rhs
    pre_processed = super(FieldGetDbPrepValueIterableMixin, self).batch_process_rhs(compiler, connection, rhs)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\lookups.py", line 55, in batch_process_rhs
    _, params = self.get_db_prep_lookup(rhs, connection)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\lookups.py", line 195, in get_db_prep_lookup
    if self.get_db_prep_lookup_value_is_iterable else
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\lookups.py", line 194, in <listcomp>
    [get_db_prep_value(v, connection, prepared=True) for v in value]
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\fields\__init__.py", line 2383, in get_db_prep_value
    value = self.to_python(value)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\django\db\models\fields\__init__.py", line 2397, in to_python
    params={'value': value},
django.core.exceptions.ValidationError: ["''*'' is not a valid UUID."]

michaelachrisco avatar May 15 '19 15:05 michaelachrisco

Found out what the issue was: Error: python manage.py dump_object app.model '*' No Error: python manage.py dump_object app.model *

michaelachrisco avatar May 15 '19 15:05 michaelachrisco