在 Django 中使用 BoundField 更改表单的值?

Posted

技术标签:

【中文标题】在 Django 中使用 BoundField 更改表单的值?【英文标题】:Change the value of a form using BoundField in Django? 【发布时间】:2011-12-05 10:42:12 【问题描述】:

我正在尝试使用自定义模板过滤器来更改表​​单的值并将其吐回。具体来说,我正在尝试做 cut 模板过滤器已经做的事情,但使用 lstriprstrip 代替。

from django.template import Library
register = Library()

def lstrip(value, arg):
    return value.value() #I can get the form value, but how do I change it?

register.filter('lstrip',lstrip)

在我的模板中:

#import custom template tags

 form.url|lstrip:"/" 

如何更改字段值并返回具有新值的字段(就像 cut 过滤器已经做的那样)?

【问题讨论】:

【参考方案1】:

首先,我会更改模板标签的名称,因为 lstrip 是 python 的内置方法。在您重命名的模板标签中,如果您想要这样做,您实际上可以使用 lstrip:

def my_custom_strip(value, arg):
    return value.lstrip(arg)

在你的模板中

 form.url|my_custom_strip:"/" 

希望这会有所帮助,

霍夫

【讨论】:

以上是关于在 Django 中使用 BoundField 更改表单的值?的主要内容,如果未能解决你的问题,请参考以下文章

使用 boundfield 时如何更新 GridView

如何在gridbox中使用comparevalidator和gridview中的boundfield项

如何将 CSS 类添加到 BoundField,以便使用 jQuery 找到它?

ModelForm 上的 Django 和字段集

将 BoundField 提取到标签

ASP.NET GridView 在 BoundField 上使用 FindControl() 来操作字段