Ошибка TypeError при рендеринге: __init __ () получил неожиданный аргумент ключевого слова 'use_decimal' - PullRequest
6 голосов
/ 27 декабря 2011

Во время работы программы я получаю следующее сообщение об ошибке

Caught TypeError while rendering: __init__() got an unexpected keyword
argument 'use_decimal'

Вот мой код, который я использую jquery 1.6.4

def load_charts(chart_list=None, render_to=''):
    embed_script = (
      '<script type="text/javascript">\n'
      'var _chartit_hco_array = %s;\n</script>\n'
      '<script src="%s" type="text/javascript">\n</script>')

    if chart_list is not None:
        if isinstance(chart_list, (Chart, PivotChart)):
            chart_list = [chart_list]
        chart_list = [c.hcoptions for c in chart_list]
        render_to_list = [s.strip() for s in render_to.split(',')]
        for hco, render_to in izip_longest(chart_list, render_to_list):
            if render_to:
                hco['chart']['renderTo'] = render_to
        embed_script = (embed_script % (simplejson.dumps(chart_list, 
                                                         use_decimal=True),
                                        CHART_LOADER_URL))
    else:
        embed_script = embed_script %((), CHART_LOADER_URL)
    return mark_safe(embed_script)

Ответы [ 2 ]

2 голосов
/ 27 декабря 2011

Подпись simplejson.dumps (см. документацию ):

dumps(obj, skipkeys=False, ensure_ascii=True, 
      check_circular=True, allow_nan=True, cls=None)

, поскольку вы можете видеть, что нет параметра use_decimal ... но вы вызываете его какэто:

simplejson.dumps(chart_list, use_decimal=True)

РЕДАКТИРОВАТЬ: На самом деле немного больше копания поднял эта другая документация .Похоже, что параметр use_decimal был добавлен где-то в версии библиотеки simplejson ... Я бы предложил обновить версию вашей библиотеки до последней доступной версии!

1 голос
/ 23 июля 2014

Чтобы спасти еще одну душу от мучительных часов.

    pip install simplejson

Примечание: это должно быть сделано в вашем виртуальном окружении проекта .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...