我正在Symfony 1.4中实现否定过滤器字段。带有1个文本输入和1个用于否定的复选框。
我可以访问输入值,如下所示
public function addXXXColumnQuery($query, $field, $value)
{
$v = $value['text'];
$n = 'negation_checkbox_true_or_false'; // don't know how?
if ($n === true)
{
$query->addWhere($query->getRootAlias().'.name = ?', $v);
}
else if ($n === false)
{
$query->addWhere($query->getRootAlias().'.name <> ?', $v);
}
}
但我无法弄清楚如何访问复选框值。
sfWidgetFormInputFileEditable 有一个'with_delete'选项,用于打印复选框。任何人都知道检查该值的代码在哪里并删除文件?
如果我能找到,也许我可以解决这个问题。
答案 0 :(得分:0)
当您创建sfWidgetFormInputFileEditable
并将with_delete
选项设置为 true 时,窗口小部件会呈现一个额外的复选框,该复选框以文件上传窗口小部件命名,带有“_delete”后缀。
选中该复选框后,sfParameterHolder
对象的sfWebRequest
包含一个以复选框小部件命名的参数。
因此,假设您有sfWidgetFormInputFileEditable
名为“文件”。在您的操作中,您可以查看是否使用以下方式选中了删除复选框:
$request->hasParameter('file_delete');