2011-11-17 8 views
2

J'ai un script en app/vendors/shells qui est exécuté périodiquement via cron. Dans ce scénario, j'importer le Router:Comment utiliser Router dans un script shell?

class AutosuggestFileShell extends Shell { 
    var $uses = array('User','Country','City','Speciality','Alias'); 

    function main() { 
     App::import('Core', 'Router'); 
     //... 

Mais le script n'utilise pas les routes et j'ai définis dans routes.php. Par exemple, je l'ai défini:

Router::connect('/plastic-surgeon/*', array(
    'controller' => 'users', 'action' => 'profile' 
)); 

Mais dans le script de la ligne:

'path' => Router::url(array(
    'controller' => 'users', 'action' => 'profile', $user['User']['slug'] 
)) 

ne génère pas l'URL plastic-surgeon/slug - au lieu de cela génère l'URL users/profile/slug.

fonctionne très bien dans différents points du site Web, par exemple dans une vue pour générer un sitemap. Par conséquent, je suppose que j'ai besoin d'importer quelque chose à partir du script shell ou peut-être qu'il n'est pas possible de charger les données contenues dans routes.php à partir du script shell?

(j'utilise CakePHP 1.3)

Répondre

3

SI vous voulez importer les routes essayer

config('routes'); 
+0

Vous avez raison! Merci ele! –

+0

Bon à entendre! Pourriez-vous le marquer comme votre réponse acceptée ... – DIDoS

+0

Fait! Merci encore. –

Questions connexes