Symfony Sonata管理-禁用列表视图
我正面临索纳塔管理员的问题。有没有办法禁用“列表视图”?我想获取数据库中的第一个实体,并在单击侧边栏中的链接时继续执行它。但并非所有条目都适用Symfony Sonata管理-禁用列表视图,symfony,sonata-admin,Symfony,Sonata Admin,我正面临索纳塔管理员的问题。有没有办法禁用“列表视图”?我想获取数据库中的第一个实体,并在单击侧边栏中的链接时继续执行它。但并非所有条目都适用 有清洁的方法吗?(我想在自定义控制器中检查实体,并根据实体重定向到列表视图或编辑视图,但这并不是真正的清理)如果要对列表视图执行自定义查询,可以在管理类中重写createQuery方法,如下所示: class EntityAdmin { public function createQuery($context = 'list') {
有清洁的方法吗?(我想在自定义控制器中检查实体,并根据实体重定向到列表视图或编辑视图,但这并不是真正的清理)如果要对列表视图执行自定义查询,可以在管理类中重写createQuery方法,如下所示:
class EntityAdmin
{
public function createQuery($context = 'list')
{
$query = parent::createQuery($context);
$query->andWhere(
$query->expr()->eq($query->getRootAlias() . '.id', ':id')
);
$query->setParameter('id', 1);
return $query;
}
}
列表视图中只有第一个实体
更新
您可以覆盖标准_layout.html.twig以更改侧边栏中的链接:
首先,您需要设置模板的位置:
app/config/config.yml
sonata_admin:
templates:
layout: ApplicationSonataAdminBundle::standard_layout.html.twig
更改侧边栏的行为,对于Sonata Admin 2.3,您可以这样做:
如果要对列表视图执行自定义查询,可以在Admin类中重写createQuery方法,如下所示:
class EntityAdmin
{
public function createQuery($context = 'list')
{
$query = parent::createQuery($context);
$query->andWhere(
$query->expr()->eq($query->getRootAlias() . '.id', ':id')
);
$query->setParameter('id', 1);
return $query;
}
}
列表视图中只有第一个实体
更新
您可以覆盖标准_layout.html.twig以更改侧边栏中的链接:
首先,您需要设置模板的位置:
app/config/config.yml
sonata_admin:
templates:
layout: ApplicationSonataAdminBundle::standard_layout.html.twig
更改侧边栏的行为,对于Sonata Admin 2.3,您可以这样做:
谢谢,但是我想避免列表视图。我点击侧栏中的链接,第一个元素被重定向到编辑模式。谢谢,但我想避免列表视图。我点击侧栏中的链接,我被重定向到第一个元素的编辑模式。