问题
How can I replace Object's ID in SonataAdmin breadcrumbs by some other text?
If I set __toString() in my document, it works only for editing. When I attempt to create new record, there is something like MyDocument:0000000000e09f5c000000006a48ef49
in the last breadcumb.
I'm searching for a method which allows me to set some text as the last breadcump if Document::toString() returns null.
回答1:
This behaviour is implemented directly in the entity:
public function __toString()
{
return $this->getFoo() ? : '-';
}
Bundles are using variants of this, including return (string)$this->getFoo();
or $this->getFoo() ? : 'n/a';
etc.
Related question: toString method for SonataAdminBundle Listing in Symfony2
回答2:
BTW something cool to know, you can completely customize the breadcrumb via a Twig template:
{% block sonata_breadcrumb %}
{% set _breadcrumb %}
<li><a href="#">Home</a></li>
<li><a href="#">Library</a></li>
<li class="active">Data</li>
{% endset %}
{{ parent() }}
{% endblock %}
来源:https://stackoverflow.com/questions/19320465/sonataadmin-replace-id-in-breadcrumbs