Piste :
Wiki: Plan du site - Derniers changements - Back link
Différences ¶
Ci-dessous, les différences entre deux révisions de la page.
fr:tutoriels:jurl [2009/09/22 12:33] – créée foxmask | fr:tutoriels:jurl [2009/09/22 12:42] (Version actuelle) – foxmask | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== jUrl, le moteur d'URLs Automatiques de Jelix. | + | ====== jUrl ====== |
+ | Vous trouverez ici une compilation d' | ||
- | Ce petit article aborde 2 points du moteur d' | + | [[fr:tutoriels:jurl:article1|jUrl, le moteur d' |
- | + | ||
- | - l' | + | |
- | - les moteurs d'URLs de Jelix | + | |
- | + | ||
- | ===== 1 - Introduction ===== | + | |
- | + | ||
- | + | ||
- | Classiquement, | + | |
- | + | ||
- | < | + | |
- | <a href="/ | + | |
- | </ | + | |
- | + | ||
- | Ce pendant si vous installez cette application dans un environnement dont le chemin est différent, | + | |
- | le petit click sur le lien aboutira sur une page 404. | + | |
- | + | ||
- | ===== 2 - Ecriture d'URLs " | + | |
- | + | ||
- | + | ||
- | Pour éviter l' | + | |
- | < | + | |
- | <a href=" | + | |
- | </ | + | |
- | + | ||
- | où __news__ est mon __module__, __default__ est mon __contrôleur__, | + | |
- | + | ||
- | ce qui génèrera l'url http:// | + | |
- | + | ||
- | Mais il y a bien évidement moyen d' | + | |
- | + | ||
- | Une autre façon de procéder, est d' | + | |
- | + | ||
- | ==== le contrôleur ==== | + | |
- | + | ||
- | <code php> | + | |
- | function index() { | + | |
- | $rep = $this-> | + | |
- | $monUrl = jurl:: | + | |
- | $tpl = new jTpl(); | + | |
- | $tpl-> | + | |
- | $rep-> | + | |
- | return $rep; | + | |
- | } | + | |
- | </ | + | |
- | ==== le template ==== | + | |
- | + | ||
- | < | + | |
- | <a href=" | + | |
- | </ | + | |
- | + | ||
- | Cas concret de cette utilisation au travers du controleur : | + | |
- | + | ||
- | l' | + | |
- | + | ||
- | Dans le template quand nous codons le javascript nous mettons entre {literal}...{/ | + | |
- | + | ||
- | Par conséquent l'URL ne peut être dynamiquement allouée à notre template, | + | |
- | il faut donc générer le code javascript dans sa méthode avec l'URL qui elle sera bien issue de jUrl(). | + | |
- | + | ||
- | voici ce que cela donne par exemple pour un champ de recherche dynamique : | + | |
- | ==== le controleur ==== | + | |
- | + | ||
- | <code php> | + | |
- | $url = jUrl:: | + | |
- | + | ||
- | $javascript = | + | |
- | "< | + | |
- | "//< | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | "// | + | |
- | "</ | + | |
- | $tpl-> | + | |
- | </ | + | |
- | ==== le template ==== | + | |
- | + | ||
- | <code php> | + | |
- | {$javascript} | + | |
- | ... | + | |
- | </ | + | |
- | ce qui donnera dans la page html : | + | |
- | < | + | |
- | <script type=" | + | |
- | //< | + | |
- | $().ready(function() { | + | |
- | $("# | + | |
- | width: 300, | + | |
- | multiple: true, | + | |
- | matchContains: | + | |
- | }); | + | |
- | }); | + | |
- | //]]> | + | |
- | </ | + | |
- | </ | + | |
- | + | ||
- | ===== 3 - Les moteurs d'URLs de Jelix ===== | + | |
- | + | ||
- | + | ||
- | A présent un autre aspect du moteur d'URLs de Jelix est son type. | + | |
- | + | ||
- | Le type de moteur __'' | + | |
- | + | ||
- | http:// | + | |
- | + | ||
- | Le type de moteur __'' | + | |
- | + | ||
- | http:// | + | |
- | + | ||
- | c'est à dire : | + | |
- | + | ||
- | http:// | + | |
- | + | ||
- | Le dernier type de moteur existant est le type __'' | + | |
- | + | ||
- | http:// | + | |
- | + | ||
- | résultat beaucoup plus concis et clair pour trouver la news " | + | |
- | + | ||
- | Le dernier (significant) utilise, de plus, un fichier ursl.xml permettant d' | + | |
- | entre une URLs et les modules. | + | |
- | + | ||
- | Ainsi pour l'url : http:// | + | |
- | <code xml> | + | |
- | <?xml version=" | + | |
- | <urls xmlns=" | + | |
- | < | + | |
- | <url pathinfo="/ | + | |
- | < | + | |
- | </ | + | |
- | </ | + | |
- | </ | + | |
- | </ | + | |
- | + | ||
- | ===== 4 - Conclusion ===== | + | |
- | + | ||
- | + | ||
- | * le générateur d'URLs permet justement de __ne jamais rien avoir en dur dans le code__ et de __ne rien figer__ concernant le choix et la gestion des URLs. | + | |
- | * le moteur __'' | + | |
- | * le moteur __'' | + | |
- | + | ||
- | + | ||
- | jUrl est donc l' | + | |
- | et d'une très grande souplesse de mis en oeuvre. | + | |
- | + | ||
- | [[http:// | + |