Zend Framework Url Helper de Vue ajoute “id” par défaut
Je suis la création d'une simple CRUD pour ajouter des liens à une catégorie. Chaque catégorie dispose d'un id. J'ai une vue qui répertorie tous les liens pour une certaine catégorie. Dans cette vue que j'ai un lien pour l'ajouter-forme:
http://example.com/link/add/categoryId/3
Je construis actuellement ce lien dans la vue en utilisant la syntaxe suivante.
<?php echo $this->baseUrl();?>/link/add/categoryId/<?php echo $this->category['id']; ?>
Je pense cela peut être fait plus propre en utilisant l'Url Helper de Vue.
<?php echo $this->url(array('controller'=>'link','action'=>'add','categoryId'=>$this->category['id'])); ?>
Mais qui me donne l'url suivante
http://example.com/link/add/id/3/categoryId/3
..qui a un supplément de "id/3".
J'ai lu mais n'a pas entièrement compris le code de l'Url Helper de Vue. Comment se fait il s'agit d'un supplément id/3 là?
Merci!
@Fge a donné la bonne réponse, ci-dessous est ma mise à jour complète de la syntaxe.
echo $this->url(array('controller'=>'link','action'=>'add','categoryId'=>$this->category['id']),null,true);
- Est-il un paramètre 'id' dans votre demande?
- Oui, j'ai une vue qui répertorie tous les liens pour une certaine catégorie. Que "certaines de catégorie" a un id, l'url est example.com/category/view/id/3
Vous devez vous connecter pour publier un commentaire.
Par défaut l'Url ViewHelper fusionne et remplace les paramètres donnés à la demande actuelle des paramètres. Comme dans votre cas, l'id de paramètre. Si vous souhaitez réinitialiser tous les paramètres que vous devez utiliser le 3ème paramètre de la vue-helper: "reset":
Cette force viewhelper de ne pas utiliser le courant d'une demande de secours" pour ne pas définir les paramètres. Le comportement par défaut est particulièrement utile si vous voulez seulement changer un ou deux paramètres de la requête en cours (comme l'action), mais ne souhaitez pas définir tous les paramètres (ou peut-être vous ne savez même pas toutes).