Расширенные фильтры исчезают после фильтрации в Sonata Admin

Я установил Sonata Admin Bundle в свой проект Symfony2. Вот мой запрос composer.json:

    "require": {
    "php": ">=5.3.9",
    "symfony/symfony": "2.7.*",
    "doctrine/orm": "~2.2,>=2.2.3,<2.5",
    "doctrine/dbal": "<2.5",
    "doctrine/doctrine-bundle": "~1.4",
    "symfony/assetic-bundle": "~2.3",
    "symfony/swiftmailer-bundle": "~2.3",
    "symfony/monolog-bundle": "~2.4",
    "sensio/distribution-bundle": "~4.0",
    "sensio/framework-extra-bundle": "~3.0,>=3.0.2",
    "incenteev/composer-parameter-handler": "~2.0",
    "doctrine/doctrine-migrations-bundle": "^1.0",
    "friendsofsymfony/user-bundle": "~2.0@dev",
    "cunningsoft/chat-bundle": "^0.4.0",
    "knplabs/knp-time-bundle": "^1.3",
    "knplabs/knp-paginator-bundle": "^2.4",
    "knplabs/knp-menu-bundle": "~2",
    "twig/extensions": "^1.3",

    "sonata-project/core-bundle": "^2.3",
    "sonata-project/block-bundle": "^2.3.8",
    "sonata-project/admin-bundle": "dev-master",
    "sonata-project/doctrine-orm-admin-bundle": "^2.3"
},

Я использую версию dev-master, но эта проблема появляется и для версии 2.3.

У меня есть несколько сообщений, сделанных пользователями, и всякий раз, когда я хочу использовать расширенные фильтры для фильтрации чего-либо, расширенные фильтры исчезают после фильтрации, но если я перепроверяю ссылку «расширенные фильтры», они появляются со значением внутри.

Это происходит как в версии dev-master, так и в версии 2.3, и это происходит со всеми сущностями, а не только с этой.

Я проверил демо-версию Sonata Sandbox, и там этого не происходит. Как так? Это настройка, которая позволяет это сделать? Или это какая-то версия? Как сделать так, чтобы расширенные фильтры оставались видимыми после фильтрации?

Перед фильтрацией я добавляю фильтр «Подробности».

введите здесь описание изображения

После фильтрации поле расширенного фильтра исчезает:

введите здесь описание изображения

Но если я снова нажму ссылку «Расширенные фильтры», она появится, и по-прежнему будет выбрана опция «не содержит».


person George Irimiciuc    schedule 08.10.2015    source источник
comment
Без понятия, но я только что проверил, и у меня происходит то же самое (никогда не замечал этого раньше), я доберусь до сути :)   -  person Sam Janssens    schedule 09.10.2015
comment
Хорошо, я также сказал это здесь   -  person George Irimiciuc    schedule 09.10.2015
comment
отлично, я также добавил к проблеме github   -  person Sam Janssens    schedule 09.10.2015


Ответы (1)


Кажется, это на самом деле их предполагаемое поведение ???

/* Advanced filters */
if (jQuery('.advanced-filter :input:visible', subject).filter(function () {     return jQuery(this).val() }).length === 0) {
    jQuery('.advanced-filter').hide();
};

Я понятия не имею, зачем они это делают...

Это происходит в vendor/sonata-project/admin-bundle/Resources/public/Admin.js

Если вы скопируете этот файл в свой собственный пакет (который имеет SonataAdminBundle в качестве родительского пакета) и прокомментируете строку vendor/sonata-project/admin-bundle/Resources/public, вы должны получить поведение, которое вы ищете.

person Sam Janssens    schedule 09.10.2015
comment
Вау, ты быстрый. Для меня это тоже звучит странно, чтобы быть предполагаемым поведением. - person George Irimiciuc; 09.10.2015
comment
да, мне тоже это кажется очень странным, в этом нет смысла, если я поставлю его равным, я могу понять, что его удаляют, но если я поставлю больше, он точно не должен исчезнуть - person Sam Janssens; 09.10.2015