IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Id array to objet url_for [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 75
    Par défaut Id array to objet url_for
    bonjour,

    est-il possible de reconstruire un objet dans un template à partir de son id?

    Par exemple, j'ai besoin de mes données sous forme de tableau pour des raisons d'optimisation, mais pour le routing, c'est plus simple d'utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url_for('categories_show_category', $category)
    Est-il possible à partir de l'id de la category de récupérer $category.

    Merci.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 75
    Par défaut
    Toujours dans le même registre de formation des urls dans symfony, j'ai des données en tableau, je forme donc des urls sans passer par "url_for" de type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="/<?php echo $sf_user->getCulture();?>/<?php echo __("contact-us/");?><?php echo $page['Translation'][$sf_user->getCulture()]['slug']; ?>">  </a>
    Seulement ce code enlève la notion de "frontend_dev.php", tandis que url_for la conserve.

    Quelqu'un a-t-il une solution ?

  3. #3
    Membre émérite Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Par défaut
    Citation Envoyé par pixworld Voir le message
    Est-il possible à partir de l'id de la category de récupérer $category.
    Merci.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CategoryTable::getInstance()->find($id);
    ne fonctionne pas ?
    (à utiliser dans l'action plutôt que dans le template, bien sûr).

    Pour ta deuxième question, $_SERVER['PHP_SELF'] devrait faire l'affaire mais tu te compliques affreusement la vie. Les helpers sont quand-même bien plus commodes/robustes.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 75
    Par défaut
    bonjour,

    je suis tout à fait d'accord avec toi, les helpers sont bien plus pratiques à écrire et on peut plus facilement travailler dessus.

    Ma problématique était de réduire le temps de chargement de ma page qui était une requête en objet et la construction d'un arbre avec un foreach donc un tableau.

    J'ai divisé par 30 le temps de chargement du component et du template en faisant une requete fetchArray et en parcourant ce même tableau.

    J'aurais aimé récupérer dans le template la notion d'objet pour "url_for", mais si tu m'indiques que ça doit être traité dans l'action, je ne vois pas de solution.

  5. #5
    Membre émérite Avatar de kenny.kev
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    646
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 646
    Par défaut
    url_for() est une fonction qui prend plusieurs type d'écriture différentes.

    par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url_for('@homepage', array('id' => $id, 'login' => $login));
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url_for('user/account?id=' . $id . '&login=' . $login);
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url_for('user/account', array('id' => $id, 'login' => $login));
    etc.
    l'utilisation d'un objet n'est pas utile et très problématique avec les problèmes de perf que tu as déjà.
    si tu passes un tableau correspondant à ce que tu as déclarer dans le routing.yml tu auras le même résultat.
    Voici la doc : http://www.symfony-project.org/jobeet/1_4/Propel/fr/05

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 75
    Par défaut
    Merci beaucoup pour ta réponse, je vais essayer cette solution qui serait beaucoup plus pratique et lisible.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Classer un Array d'objets ActiveRecord par created_at
    Par pada51 dans le forum Ruby on Rails
    Réponses: 3
    Dernier message: 25/10/2008, 12h10
  2. [Tableaux] Classer un array d'objets
    Par Linio dans le forum Langage
    Réponses: 4
    Dernier message: 27/11/2007, 17h24
  3. Déclarer un Array d'Objet?
    Par lekunfry dans le forum Flex
    Réponses: 1
    Dernier message: 26/11/2007, 01h59
  4. wxWidgets définir un array d'objets
    Par reptils dans le forum wxWidgets
    Réponses: 1
    Dernier message: 26/07/2006, 16h00
  5. [Reflect] Créer un array d'objets avec le nom de leur classe
    Par Onarap dans le forum API standards et tierces
    Réponses: 18
    Dernier message: 12/06/2006, 12h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo