Если вы хотите сделать заказный запрос для своего просмотр списка, можно переопределить метод 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;
}
}
у вас будет только первый объект в вашем списке.
UPDATE
Вы можете переопределить standard_layout.html.twig изменить ссылку в боковой панели:
Прежде всего, необходимо установить, где ваш шаблон находится:
приложение/конфигурации /config.yml
sonata_admin:
templates:
layout: ApplicationSonataAdminBundle::standard_layout.html.twig
Изменить поведение боковой панели, для Sonata Admin 2.3 это как вы это делаете:
src/Application/Sonata/AdminBundle/Resources/Views/standard_layout.html.twig l.224
<ul class="treeview-menu{% if active %} active{% endif %}">
{% for admin in group.items %}
{% if admin.code == 'sonata.admin.entity' and
admin.hasroute('edit') and
admin.isGranted('EDIT') %}
<li{% if app.request.get('_sonata_admin') == admin.code %} class="active"{% endif %}><a href="{{ admin.generateUrl('edit', {'id' : 1}) }}"><i class="fa fa-angle-double-right"></i> {{ admin.label|trans({}, admin.translationdomain) }}</a></li>
{% else %}
{% if admin.hasroute('list') and admin.isGranted('LIST') %}
<li{% if app.request.get('_sonata_admin') == admin.code %} class="active"{% endif %}><a href="{{ admin.generateUrl('list')}}"><i class="fa fa-angle-double-right"></i> {{ admin.label|trans({}, admin.translationdomain) }}</a></li>
{% endif %}
{% endif %}
{% endfor %}
</ul>
Вы должны изменить '' sonata.admin.entity по identifier of your admin service.
Кроме того, если вы хотите удалить доступ к списку следует добавить в своем классе администратора
use Sonata\AdminBundle\Route\RouteCollection;
class EntityAdmin
{
protected function configureRoutes(RouteCollection $collection)
{
$collection->remove('list');
}
}
Спасибо, но я хочу, чтобы избежать представления списка. Я нажимаю ссылку в боковой панели, и я перенаправляюсь в режим редактирования для первого элемента. – Peekmo
Хорошо, я обновил свой ответ, исходя из ваших потребностей. – HypeR
Спасибо большое :) – Peekmo