我sfWidgetFormPropelChoice
在过滤器中使用了一个小部件,并打开了多选选项。
有没有一种简单的方法可以默认选择所有选项?
我知道我可以使用 set default 来选择特定的选项,但我希望它们都被添加,即使表格变大了。
$this->setDefault('field', array(1,2,3,4,5));
我sfWidgetFormPropelChoice
在过滤器中使用了一个小部件,并打开了多选选项。
有没有一种简单的方法可以默认选择所有选项?
我知道我可以使用 set default 来选择特定的选项,但我希望它们都被添加,即使表格变大了。
$this->setDefault('field', array(1,2,3,4,5));
为什么不将表中的所有值作为默认数组?类似的东西(我将采用一个名为的默认表Article
):
// in your model
class ArticleQuery extends BaseArticleQuery
{
static public function getDefaultsValue()
{
$articles = self::create()
->setFormatter('PropelArrayFormatter')
->find();
$default = array();
foreach($articles as $article)
{
$default[] = $article['Id'];
}
return $default;
}
然后,在您的 setDefault 中:
$this->setDefault('field', ArticleQuery::getDefaultsValue());