dans le fichier twig, tester le role:
app.security.isGranted(‘ROLE_ADMIN’)
dans le fichier php : $this->container->get(‘security.context’)->isGranted(‘ROLE_USER’)
我们的blog
dans le fichier twig, tester le role:
app.security.isGranted(‘ROLE_ADMIN’)
dans le fichier php : $this->container->get(‘security.context’)->isGranted(‘ROLE_USER’)
La déconnexion est gérée par le composant Security de Symfony2.
on peut configurer dans le fichier security.yml
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
pattern: ^/
form_login:
provider: fos_userbundle
remember_me: true
always_use_default_target_path: true
default_target_path: /espace-client
use_referer: true
remember_me:
key: %secret%
anonymous: true
logout:
path: /logout
target: bundle
login:
pattern: ^/(login$|register|resetting)
anonymous: true
path: le chemin de deconnexion
target: après le deconnexion, la page ou il va aller
si vous voulez utiliser le repository, il faut declarer le chemin du fichier dans le fichier Entity.test !
example:
/**
* @ORM\Entity(repositoryClass=”Restaurant\RestaurantBundle\Repository\RestaurantRepository”)
*/
je suis en train de me former le symfony 2, j’ai installé le bundle FosUser, mais aujourd’hui, j’ai trouvé qu’il a un problème dans un projet, mais pas dans le projet essaie,
dans la class UserPerso, une class qui decend de la class BaseUser, il pose toujours un problème,
Fatal error: Class Restaurant\UtilisateurBundle\Entity\Utilisateur contains 1 ab
stract method and must therefore be declared abstract or implement the remaining
methods (Symfony\Component\Security\Core\User\UserInterface::equals) in C:\deve
lopement\Symfony2Projets\restaurant\Symfony\src\Restaurant\UtilisateurBundle\Ent
ity\Utilisateur.php on line 14
après j’ai cherché sur internet, j’ai vu qu’il y a encore des gens qui a rencontré le meme problème, mais personne a proposé une solution, après j’ai comparé les deux projet, fin, j’ai trouvé le version de bundle ne sont pas le même, après j’ai copié le bundle de projet qui marche dans le projet qui ne marche pas, problème réglé…
donc, résultat est un peu con, c’est pas la bonne version que j’ai utilisé. 🙂
quand on crée les fichiers fixture pour initialiser les données, il faut faire attention les majuscule et minuscules des références
par examples
schema.yml
Categorie:
actAs:
Timestampable: ~
columns:
name: {type: string(255), notnull: true, unique: true}
Article:
actAs:
Timestampable: ~
columns:
titre: { type: string(255), notnull: true}
mot_cle: {type: string(255), notnull: true}
contenu: {type: string(20000), notnull: true}
categorie_id : {type: integer, notnull: true}
relations:
Categorie: {onDelete: CASCADE, local:categorie_id, foreign: id, foreignAlias: Article}
fichier categorie.yml
categorie:
perso:
name: perso
test:
name: test
fichier articles.yml
article:
article_1:
Categorie: test // la premiere lettre doit etre en majuscule
titre: CV
mot_cle: CV
contenu: this is mon CV
article_2:
Categorie: test // la premiere lettre doit etre en majuscule
titre: test_2
mot_cle: test_2
contenu: this is second test