symfony - How can I fetch a value from the DB and display it in all templates? -
Assume that I have a and call it in my But for performance reasons, I would like to completely avoid looping through message messages just to check it For whether it is unread or not, I prefer to get it through DQL call (and keep this fame in But the apaic use of the Repository methods or the use of the Entity Manager (or theory) in the unit sections Practicing is to do. I thought about bringing value to the service and inject it into my institution. But this is not recommended to inject the services in signals. < P> then get this value and come in all the templates What is a legal way to extract (It can be done without any unit methods, for example, controlling the value in all) I used another solution to get data from a repository. First, define the service: Then define the Tivig extension class: user and a
message my Symfony2 The unit is an app with a
one to the relationship between the two organizations, so that the user can have more than one message, and I display the number of unread messages in this kind of main navigation
(6) unread messages To get this amount of number per user controller independently, I can think of defining the
user unit method:
public function getUnreadMessagesCount () {$ unreadMessagesCount = 0; Foreign exchange ($ this-> message as $ message) {if ($ message-> Unread ()) {$ unreadMessagesCount ++; }}}
menu.html.twig
{% set umc = app.user }. GetUnreadMessagesCount ()%} {% if umc & gt; 0%} ({{umc}}} {% endif%}
UserRepository class)
$ Query = $ em- & gt; createQuery (select "select"). D. WHERE M.Rread = Truth and U.ID =: UID ");
## bundle / resource / config / services.yml in services: YOUR_BUNDLE .twig.NAME_OF_THE_EXTENSION: Category: Your \ Bundle \ Toggle \ CLASSNAME Argument: - @service_container Tags: - {name: twig.extension}
# yOUR_BUNDLE / tweed / CLASSNAME.php
Comments
Post a Comment