2011-10-09 42 views
1

我正在创建Plone/PloneFormGen中的表单。这种形式的,我从MySQL数据库中作为键填充多选字段,值带多选字段的PloneFormGen

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

这个被存储到MySQL表作为键阵列[“2”,“4”]

现在我想创建一个编辑表单来编辑旧数据。 如何在编辑表单中将旧选定选项(存储在数据库中)选作默认选项?我一直试图用不同的选项覆盖,但似乎没有任何工作。我有一个pythos脚本来提取数据,可是......版本的

的Plone 3.3.5 PloneFormGen 1.6.3

+0

有一个更好的机会,我们就可以,如果你告诉我们你尝试过什么,回答你的问题。 – SteveM

回答

1

问题不仅仅是格式化。还必须将字符串转换为整数。

我用下面的代码解决了它。

这是一个python脚本的一部分,我从SQL中获取数据以填充PloneFormGen中的表单。

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

这将逗号分隔字符串转换为包含整数元组...

0

赔率是你返回的数据实际上不是以列表形式。这可能只是一个格式化的字符串。因此,您需要使用脚本将字符串转换为值列表。

如果可能的值是简单字符,这可能非常简单:删除括号,空格和引号,然后拆分为逗号。