Добавьте его в качестве аргумента ключевого слова, скажем, он называется my_arg. Обязательно pop()
ключевое слово arg перед вызовом super()
, потому что метод init родительского класса не принимает дополнительные аргументы ключевого слова.
class DynamicForm(Form):
def __init__(self, *args, **kwargs):
my_arg = kwargs.pop('my_arg')
super(DynamicForm, self).__init__(*args, **kwargs)
for item in range(5):
self.fields['test_field_%d' % item] = CharField(max_length=255)
А когда вы создаете форму, это выглядит так:
form = DynamicForm(..., my_arg='value')