2016-01-07 2 views
1

Я обновляю использование приложения Sonata администратора Symfony от Sonata-Admin 2.2 до 2.3 в рамках обновления общего проекта до Symfony 2.7.Выбор времени (нет даты) в форме Sonata-admin

У нас есть несколько полей «время» (то есть, определяется в Учении, как «время», без какого-либо значимого компонента даты.)

В Соната-администраторе 2,2 определение FormMapper было просто:

$formMapper 
    ->tab('tab.general') 
    ->add('start', null, array('label' => 'label.start') 
    ->end() 

и это дало макет «полуформа ширины» час и минуту выбора коробки, бок о бок, в виде:

enter image description here

Но Sonata-Admin 2.3 показывает их в течение двух полных строк:

enter image description here

, который не так хорошо или пригодные к использованию.

Итак, что я должен настраивать, чтобы получить тот же рендеринг?

Я пробовал использовать «sonata_type_datetime_picker», но на самом деле настойчиво демонстрирует дату. Эти поля не имеют даты. Кажется, нет никакого эквивалента для просто выбора времени.

ответ

2

Имел ту же проблему и решил ее, добавив мой собственный файл CSS для переопределений.

1) Добавить класс в поле формы

->add('start', 'time', array(
    'attr' => array('class' => 'fixed-time') 
)) 

2) Создать новый файл CSS В пакете под Resources/общественного/CSS/override.css с переопределением по фиксированному времени класса

Например:

.fixed-time .select2-container { 
    width: auto !important; 
} 

3) Тогда где-то в пачке (Ресурсы/зрения s) создать новый шаблон с именем standard_layout.html.twig и переопределить шаблон Sonata + добавить вновь созданный файл CSS (не забудьте сначала вызвать parent(), чтобы сначала загрузить код сонаты).

{% extends 'SonataAdminBundle::standard_layout.html.twig' %} 

{% block stylesheets %} 
    {{ parent() }} 
    <link rel="stylesheet" href="{{asset('bundles/yourbundle/css/override.css')}}" type="text/css" media="all"/> 
{% endblock %} 

4) Затем зарегистрируйте свой шаблон шаблона standard_layout в администраторе Sonata (в вашем config.yml).

sonata_admin: 
    templates: 
     layout: YourBundle::standard_layout.html.twig 

Не забудьте установить новые активы (активы: установки) и очистить кэш (удалить выбранную папку из приложения/кэш), в противном случае вы не увидите никаких изменений.

+0

спасибо! Это подтвердило обход, который я в итоге нашел, объединив подсказки от https://github.com/sonata-project/SonataAdminBundle/issues/2571 и http://stackoverflow.com/questions/19828729/how-to-override-a -css-оф-сонаты-админ-расслоение-в-Symfony2 – jrg

 Смежные вопросы

  • Нет связанных вопросов^_^