PloneFormGen с полем Multi-Select - PullRequest
       16

PloneFormGen с полем Multi-Select

1 голос
/ 09 октября 2011

Я в процессе создания формы в Plone / PloneFormGen.Эта форма имеет поле Multi-Select, которое я заполняю из базы данных MySQL в качестве ключа, значение

1, Option 1
2, Option 2
3, Option 3
etc...

Оно сохраняется в таблице MySQL как массив ключей ['2', '4']

Теперь я хочу создать форму для редактирования старых данных.Как я могу получить старые выбранные параметры (хранящиеся в базе данных), которые будут выбраны по умолчанию в форме редактирования?Я пытался переопределить различные варианты, но, похоже, ничего не работает.У меня есть сценарий pythos для извлечения данных, но ...

Версия Plone 3.3.5 PloneFormGen 1.6.3

Ответы [ 2 ]

1 голос
/ 11 декабря 2011

Проблема была не только в форматировании.Также строку нужно было преобразовать в целые числа.

Я решил ее с помощью следующего кода.

Это часть скрипта Python, где я извлекаю данные из SQL, чтобы заполнить форму в PloneFormGen.

form['col_name'] = tuple(int(v) for v in re.findall("[0-9]+", row['col_name']))

Это преобразует строку через запятую в кортеж, содержащий целые числа ...

0 голосов
/ 09 октября 2011

Скорее всего, ваши возвращенные данные не в форме списка. Это, вероятно, просто отформатированная строка. Итак, вам нужно будет использовать ваш скрипт для преобразования строки в список значений.

Если ваши возможные значения - простые символы, это может быть очень просто: уберите скобки, пробелы и кавычки, а затем разделите их запятыми.

...