Symfony1 Symfony:一种显示/隐藏列表行的方法?
我试图创建一组类似于索引操作的操作,但它们显示过滤后的数据(某种现成的报告) 到目前为止,我想出了这样的办法:Symfony1 Symfony:一种显示/隐藏列表行的方法?,symfony1,action,generator,yaml,backend,Symfony1,Action,Generator,Yaml,Backend,我试图创建一组类似于索引操作的操作,但它们显示过滤后的数据(某种现成的报告) 到目前为止,我想出了这样的办法: public function executeReport(sfWebRequest $request) { $this->setFilters(array('field'=>'value')); $this->forward($this->getModuleName(), 'index'); } 但是我还想修改列的集合 默认设置存储在genera
public function executeReport(sfWebRequest $request)
{
$this->setFilters(array('field'=>'value'));
$this->forward($this->getModuleName(), 'index');
}
但是我还想修改列的集合
默认设置存储在generator.yml中
generator:
param:
config:
list:
display: [field1, field2, field3]
有没有办法在executeport()中只设置可见的字段2和字段3?只使用所需的字段修改模板ReportSuccess.php 您可以在module/lib/moduleGeneratorConfiguration.class.php中覆盖生成器配置: 用于获取字段的方法如下:
public function getListDisplay()
{
return array('field2','field3');
}
我没有测试过它,但您应该能够使用以下不同的值覆盖它:
public function getListDisplay()
{
return sfConfig::get('app_my_columns');
}
也许我错了,但如果你隐藏属性,你没有隐藏任何行,你将隐藏列。要隐藏/显示行,可以在结构类似于以下内容的模板文件上执行此操作:
foreach($row_you_can_show as $row){
if(you_want_to_show($row)){
echo "<tr>...</tr>";
}
}
foreach($row\u您可以显示为$row){
如果(你想展示($row)){
回声“…”;
}
}
如果你想动态地控制它,你可以用javascript函数来实现,但是更复杂
祝你好运getListDisplay()可以正常工作。但是现在如何根据操作设置列呢?我还必须修改/覆盖一些部分。我尽量避免这样@阿伦德给出了更好的解决方案