Gewusst wie: übergeben von Variablen zu sonata-admin-benutzerdefinierte Liste Aktion?
Wie würde ich ein array übergeben von Variablen zu SonataMediaBundle:MediaAdmin:list_image.html.twig
?
Es scheint nicht zu sein jede option zur Verfügung.
class MediaAdmin extends Admin
{
protected function configureListFields(ListMapper $listMapper)
{
$listMapper
->addIdentifier('id')
->add('image', 'string', array(
'template' => 'SonataMediaBundle:MediaAdmin:list_image.html.twig',
array('data'=>'something')<<- This is not working
))
->add('custom', 'string', array(
'template' => 'SonataMediaBundle:MediaAdmin:list_custom.html.twig'
))
;
}
}
Vorlage:
{% extends 'SonataAdminBundle:CRUD:base_list_field.html.twig' %}
{% block field%}
{{dump(data)}} <<- This is not working
{% endblock %}
Ich will nur übergeben Sie eine variable mit dem Wert zu SonataMediaBundle:MediaAdmin:list_image.html.twig
.
- Sie müssen das überschreiben der Quark-controller für Ihre admin-Klasse und dann in Ihre Quark-controller überschreiben
listAction()
- Methode, und übergeben Sie die variable, durch diese Methode - Gibt es noch etwas einfacher 🙁
- Es ist, wenn Sie können, schnappen Sie sich Ihren Wert entity-Klasse, wie
getMyCustomValue(){ return 1; }
und dann im Zweig können Sie bekommen 1 von{{ object.getMyCustomValue() }}
- Ich denke, deine 'Daten' sollte angezeigt werden, wie ein element der field_description.Optionen array. Versuchen Sie, diese {{ dump (field_description.Optionen|keys) }}
- Welche Lösung für Sie gearbeitet @wilsonrufus ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nur erarbeiten, Tigran Antwort.
und in Ihre Vorlage ein:
und wenn Sie ein array indiziert durch die Objekt-id, Sie können es auf diese Weise:
Legen Sie benutzerdefinierte Daten an ein Mitglied der admin-Klasse . dann rufen Sie es aus der Liste Feld Vorlage.
Dann in den Zweig nennen.
Bewusst sein, die Variablen umbenannt. Meine 5 Cent.
Versionen: Symfony 2.6, Sonata-Admin-2.3
War ich überschreiben sonata_type_collection_widget.
Ich Tat, setzen Sie die variable in der Admin-Klasse, verlor aber eine Stunde versucht herauszufinden, wie der Zugriff auf admin-variable. Man kann die Methoden aufrufen und Zugriff auf Variablen von admin-class.
Hier ist, wie es gemacht wird, die in 2.3:
Lassen Sie versuchen, diese Lösung :
AdminClass :
Template-Liste__action_replay.html-Code.Zweig
Viel Spaß mit :