SORU
18 EYLÜL 2011, Pazar


-Giriş şablonu kullanıcı erişim

FOSuserbundle Kullanıcı kaydı https://github.com/FriendsOfSymfony/FOSUserBundle ile başlamak için kullanıyorum

Ve dışarı giriş / kayıt var. Şimdi yapmak istediğim şey giriş yapmış kullanıcılar veri kapmak ve benim sitenin her sayfasında mevcut. "" Başlığı şeyi yazın. Merhaba kullanıcı adı gibi

Benim bir kumanda gömme gibi görünüyorapp/Resources/görüş/base.html.dalen iyi yolu bunu yapmak için http://symfony.com/doc/current/book/templating.html#embedding-controllers

Kullanıcı profili veri erişimi için benim denetleyicisi yazdım. Bir türlü çözemiyorum ne gömülü benim denetleyicisi FOS yöntemlerini nasıl. Benim bu kadarAcme/UserBundle/Controller/UserController.phpBunu yapmak istiyorum:

public function showAction()
{
    $user = $this->container->get('security.context')->getToken()->getUser();
    if (!is_object($user) || !$user instanceof UserInterface) {
        throw new AccessDeniedException(
               'This user does not have access to this section.');
    }

    return $this->container->get('templating')
      ->renderResponse('FOSUserBundle:Profile:show.html.'.$this->container
      ->getParameter('fos_user.template.engine'), array('user' => $user));
}

dan aldım. vendor/bundles/FOS/UserBundle/Controller/ProfileController.php

CEVAP
19 EYLÜL 2011, PAZARTESİ


Kullanıcı verileri doğrudan denetleyicisi bir şey almadan twig şablonu erişebilirsiniz. Kullanıcı erişilebilir gibi : app.user.

Şimdi, kullanıcının her özellik erişebilirsiniz. Örneğin, bu gibi kullanıcı adı erişebilirsiniz : app.user.username.

Eğer kullanıcı oturum değilse uyarı, app.user null.

Eğer kullanıcı oturum olup olmadığını kontrol etmek isterseniz, is_granted dal işlevini kullanabilirsiniz. Eğer kullanıcı olup olmadığını kontrol etmek istiyorsanız örneğin, ROLE_ADMIN, is_granted("ROLE_ADMIN") yapmak zorunda.

Yani, sayfalarınızın her yapabilirsiniz :

{% if is_granted("ROLE") %}
    Hi {{ app.user.username }}
{% endif %}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canceriansoul

    Canceriansou

    15 Ocak 2011
  • the one am radio

    the one am r

    6 Mayıs 2006
  • Tire Rack

    Tire Rack

    31 Mayıs 2007