2024-04-25 16:35:33 发布
网友
我定义了一个带有ManyToManyField的模型,我希望该字段显示由空格连接的值,例如:
<input type="text" name="foo" value="val1 val2 val3"/>
我定义了使用CharField表示多个值的表单:
值不显示用空格分隔的值,而是显示以下内容:
[u'val1', u'val2', u'val3']
我如何才能覆盖此行为?在
您有一个基本的误解,即字段本身不负责它们的呈现方式。这就是widgets要做的。在
好吧,我终于明白了:
class MultiValueTextWidget(TextInput): def _get_value(self, value): return " ".join(value) def _format_value(self, value): if self.is_localized: return formats.localize_input(self._get_value(value)) return self._get_value(value)
我之前已经试过了(在我发布原始问题之前),但我认为我的字段声明有问题。当我用这样的小部件实例化字段时,它会起作用:
出于某种原因,我在这方面遇到了麻烦:
class Meta: widgets = { 'markets': MultiValueTextWidget() }
您有一个基本的误解,即字段本身不负责它们的呈现方式。这就是widgets要做的。在
好吧,我终于明白了:
我之前已经试过了(在我发布原始问题之前),但我认为我的字段声明有问题。当我用这样的小部件实例化字段时,它会起作用:
^{pr2}$出于某种原因,我在这方面遇到了麻烦:
相关问题 更多 >
编程相关推荐