Symfony ne propose pas de méthode pour faire un lien entre deux
applications. La seule méthode est de faire un lien absolu (du type
http://www.domain.com/user/edit/id/1 par exemple)
Comme je voulais pouvoir passer des liens entre deux appli d'un même
projet, j'ai écrit un petit helper.
Je t'ai mise le code mais c'est pas facile de le lire sur google
groupe.

 /**
  * a function that allow link_to between apps
  * @param  $app    string      the app we want to go to
  * @param  $route  string      the route in the app. Must be valid
  * @param  $args   array       the arguments required by the route.
Optional
  *
  */
function cross_app_link_to($app, $route, $args=null)
{
  /* get the host to build the absolute paths
     needed because this menu lets switch between sf apps
  */
  $host =  sfContext::getInstance()->getRequest()->getHost() ;
  /* get the current environment. Needed to switch between the apps
preserving
     the environment
  */
  $env = sfConfig::get('sf_environment');
  /* get the routing file
  */
  $appRoutingFile =
SF_ROOT_DIR.DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.
$app.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'routing.yml' ;
  /* get the route in the routing file */
  /* first, substract the @ from the route name */
  $route = substr($route, 1, strlen($route)) ;
  if (file_exists($appRoutingFile))
  {
    $yml = sfYaml::load($appRoutingFile) ;
    $routeUrl = $yml[$route]['url'] ;
    foreach ($args as $k => $v)
    {
      $routeUrl = str_replace(':'.$k, $v, $routeUrl) ;
    }
  }
  if ($env == 'dev')
  {
          $path = 'http://' . $host . '/' . $app . '_dev.php' . $routeUrl ;
  }
  else
  {
        $path = 'http://' . $host . $routeUrl ;
  }
  return $path ;
}

On 2 avr, 14:35, Olivier Mansour <[EMAIL PROTECTED]> wrote:
> Bonjour,
>
> J'aurais voulu savoir comment faire des liens entre deux applications  
> d'un même projet.
> Link_to ne semble pas pouvoir m'aider, il est relatif à une seule  
> application.
>
> Merci par avance
> Olivier
>
> --
> Olivier MANSOUR      http://www.clever-age.com
> Clever Age Lyon - conseil en architecture technique
> GSM: +33 6 11 03 23 77  Tél: +33 4 78 89 46 45
>
> Clever Age vous invite à ses petits déjeuners du 
> Jeudihttp://www.clever-age.com/actualites/petits-dejeuners/


--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [EMAIL PROTECTED]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à