1

背景

我正在寻找使用 django-dynamic-formsets javascript 应用程序动态添加/删除表单集。

这是没有添加/删除的 request.POST 数据(作为参考):

<QueryDict: {u'set_set-1-test': [u'4'], 
u'set_set-2-id': [u'5'], 
u'set_set-2-test': [u'4'], 
u'set_set-1-id': []
u'ExData_5-MAX_NUM_FORMS': [u'1000'], 
u'ExData_3-0-numSets': [u'3'], 
u'set_set-TOTAL_FORMS': [u'3'], 
u'ExData_3-TOTAL_FORMS': [u'2'], 
u'ExData_5-0-sett': [u'5'], 
u'ExData_4-INITIAL_FORMS': [u'2'], 
u'ExData_4-0-ex': [u'5'], 
u'ExData_5-INITIAL_FORMS': [u'1'], 
u'ExData_4-TOTAL_FORMS': [u'2'], 
u'set_set-INITIAL_FORMS': [u'3'], 
u'ExData_4-0-sett': [u'4'], 
u'ExData_4-1-ex': [u'4'], 
u'ExData_5-TOTAL_FORMS': [u'1'], 
u'set_set-0-id': [u'3'], 
u'add': [u'Add Set'], 
u'ExData_3-1-repScheme': [u'15-15-15-15'], 
u'ExData_3-0-ex': [u'1'], 
u'ExData_5-0-numSets': [u'2'], 
u'ExData_5-0-id': [u'5'], 
u'ExData_3-0-sett': [u'3'], 
u'ExData_4-0-numSets': [u'3'], 
u'set_set-MAX_NUM_FORMS': [u'1000'], 
u'ExData_3-1-numSets': [u'4'], 
u'ExData_3-1-id': [u'2'], 
u'ExData_5-0-repScheme': [u'amap-amap'], 
u'ExData_4-0-id': [u'3'], 
u'set_set-0-DELETE': [u'', 
u'', 
u''], 
u'ExData_4-MAX_NUM_FORMS': [u'1000'], 
u'ExData_3-0-repScheme': [u'10-8-6'], 
u'ExData_4-1-numSets': [u'3'], 
u'set_set-2-DELETE': [u'', 
u''], 
u'ExData_4-1-repScheme': [u'10-10-10'], 
u'ExData_3-INITIAL_FORMS': [u'2'], 
u'set_set-0-workout': [u'4'], 
u'ExData_4-1-id': [u'4'], 
u'ExData_3-1-ex': [u'2'], 
u'ExData_5-0-ex': [u'3'], 
u'set_set-1-DELETE': [u'', 
u'', 
u''], 
u'ExData_3-MAX_NUM_FORMS': [u'1000'], 
u'ExData_4-0-repScheme': [u'15-12-12']}>

这是添加 1 次时的 request.POST 数据:

    <QueryDict: {u'set_set-1-workout': [u'4'], 
u'set_set-2-id': [u'5'], 
u'set_set-2-workout': [u'4'], 
u'set_set-1-id': [u'4'], 
u'ExData_3-1-sett': [u'3'], 
u'ExData_3-0-id': [u'1'], 
u'ExData_4-1-sett': [u'4'], 
u'ExData_5-MAX_NUM_FORMS': [u'1000'], 
u'ExData_3-0-numSets': [u'3'], 
u'-NaN-set_set-2-id': [u''], 
u'set_set-TOTAL_FORMS': [u'3'], 
u'ExData_3-TOTAL_FORMS': [u'2'], 
u'ExData_5-0-sett': [u'5'], 
u'ExData_4-INITIAL_FORMS': [u'2'], 
u'-NaN-ExData_5-0-repScheme': [u'2'], 
u'-NaN-ExData_5-0-ex': [u'3'], 
u'ExData_4-0-ex': [u'5'], 
u'ExData_5-INITIAL_FORMS': [u'1'], 
u'ExData_4-TOTAL_FORMS': [u'2'], 
u'set_set-INITIAL_FORMS': [u'3'], 
u'ExData_4-0-sett': [u'4'], 
u'ExData_4-1-ex': [u'4'], 
u'ExData_5-TOTAL_FORMS': [u'1'], 
u'set_set-0-id': [u'3'], 
u'add': [u'Add Set'], 
u'ExData_3-1-repScheme': [u'15-15-15-15'], 
u'ExData_3-0-ex': [u'1'], 
u'ExData_5-0-numSets': [u'2'], 
u'ExData_5-0-id': [u'5'], 
u'ExData_3-0-sett': [u'3'], 
u'ExData_4-0-numSets': [u'3'], 
u'-NaN-set_set-2-workout': [u''], 
u'set_set-MAX_NUM_FORMS': [u'1000'], 
u'ExData_3-1-numSets': [u'4'], 
u'ExData_3-1-id': [u'2'], 
u'ExData_5-0-repScheme': [u'amap-amap'], 
u'-NaN-ExData_5-0-sett': [u''], 
u'ExData_4-0-id': [u'3'], 
u'set_set-0-DELETE': [u'', 
u'', 
u''], 
u'ExData_4-MAX_NUM_FORMS': [u'1000'], 
u'ExData_3-0-repScheme': [u'10-8-6'], 
u'ExData_4-1-numSets': [u'3'], 
u'set_set-2-DELETE': [u'', 
u''], 
u'ExData_4-1-repScheme': [u'10-10-10'], 
u'ExData_3-INITIAL_FORMS': [u'2'], 
u'set_set-0-workout': [u'4'], 
u'ExData_4-1-id': [u'4'], 
u'ExData_3-1-ex': [u'2'], 
u'ExData_5-0-ex': [u'3'], 
u'set_set-1-DELETE': [u'', 
u'', 
u''], 
u'-NaN-ExData_5-0-numSets': [u'1'], 
u'ExData_3-MAX_NUM_FORMS': [u'1000'], 
u'-NaN-ExData_5-0-id': [u''], 
u'ExData_4-0-repScheme': [u'15-12-12']}>

如您所见,在第二个 request.POST 数据中到处都是“NaN”,我认为这意味着 django-dynamic-formsets javascript 在错误的位置查找标识号(在名称之前)

问题

1)。我的请求数据格式与 django-dynamic-formsets javascript 正在寻找什么之间的不兼容是什么?

2)。更重要的是,我该如何解决它?

4

1 回答 1

1

you should add/change the prefix in your javascript code. it's selecting the wrong html that's why it's output have NaN (Not a Number) fields.

于 2013-07-26T05:22:52.333 回答