Mic*_*icE 5 php symfony symfony-sonata sonata-admin
我正在使用SonataAdminBundle
作为Symfony2(v2.0.x)驱动的网站的管理界面的基础.
在SonataAdmin中添加到仪表板的实体默认情况下具有以下操作:
这适用于大多数实体,但是该网站有一些实体,其数据不是通过管理界面添加的 - 即它们是从面向公众的网站输入的.管理员只需要查看它们(仪表板中的"列表"操作),编辑它们或删除它们.管理员不应该能够向这些实体添加数据.
有没有办法配置SonataAdmin仪表板中各个实体旁边显示哪些操作?
Mun*_*Das 11
在您的EntityAdmin
课程中添加以下内容
public function configureRoutes(RouteCollection $collection)
{
$collection->remove('create');
}
Run Code Online (Sandbox Code Playgroud)
要从Admin
班级中删除单个路线,请使用
protected function configureRoutes(RouteCollection $collection)
{
$collection->remove('edit');
}
Run Code Online (Sandbox Code Playgroud)
在Symfony 2.1+中,您可能会clearExcept
删除除给定路径之外的所有路径,如下所示:
public function configureRoutes(RouteCollection $collection)
{
$collection->clearExcept(array('list', 'edit', 'delete', 'batch'))
}
Run Code Online (Sandbox Code Playgroud)
这样做的好处是可以保持您的操作,就像添加新操作一样SonataAdminBundle
.
在Symfony 2.0中,还有类似的未记录功能(感谢Jeroen):
public function configureRoutes(RouteCollection $collection)
{
$collection->removeAllExcept(array('list', 'edit', 'delete', 'batch'))
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3680 次 |
最近记录: |