Ticket #4431: 4431.diff

File 4431.diff, 3.0 KB (added by David A Krauth, 17 years ago)
  • django/core/management/commands/dumpdata.py

     
    1818
    1919        format = options.get('format', 'json')
    2020        indent = options.get('indent', None)
     21        show_traceback = options.get('traceback', False)
    2122
    2223        if len(app_labels) == 0:
    2324            app_list = get_apps()
     
    3839        try:
    3940            return serializers.serialize(format, objects, indent=indent)
    4041        except Exception, e:
     42            if show_traceback:
     43                raise
    4144            raise CommandError("Unable to serialize database: %s" % e)
  • django/core/management/commands/loaddata.py

     
    2727        self.style = no_style()
    2828
    2929        verbosity = int(options.get('verbosity', 1))
     30        show_traceback = options.get('traceback', False)
    3031
    3132        # Keep a count of the installed objects and fixtures
    3233        count = [0, 0]
     
    9899                                label_found = True
    99100                            except Exception, e:
    100101                                fixture.close()
     102                                transaction.rollback()
     103                                transaction.leave_transaction_management()
     104                                if show_traceback:
     105                                    raise
    101106                                sys.stderr.write(
    102107                                    self.style.ERROR("Problem installing fixture '%s': %s\n" %
    103108                                         (full_path, str(e))))
    104                                 transaction.rollback()
    105                                 transaction.leave_transaction_management()
    106109                                return
    107110                            fixture.close()
    108111                    except:
     112                        if show_traceback:
     113                            raise
    109114                        if verbosity > 1:
    110115                            print "No %s fixture '%s' in %s." % \
    111116                                (format, fixture_name, humanize(fixture_dir))
  • django/core/management/base.py

     
    2727            help='The Python path to a settings module, e.g. "myproject.settings.main". If this isn\'t provided, the DJANGO_SETTINGS_MODULE environment variable will be used.'),
    2828        make_option('--pythonpath',
    2929            help='A directory to add to the Python path, e.g. "/home/djangoprojects/myproject".'),
     30        make_option('--traceback', action='store_true',
     31            help='Print traceback on exception'),
    3032    )
    3133    help = ''
    3234    args = ''
Back to Top