2012-04-13 18 views
0

マイアプリのクロスアプリケーションのリンクを必要とし、細心の注意を払って http://symfony.com/blog/cross-application-linkssymfonyの1.4クロスアプリケーションリンクは

でブログに従った後、私は働いてそれらの1つを得たし、それらのいずれかが動作していない失敗します。フロントエンドからのバックエンドアプリケーションへのリンクは正しく動作しますが、バックエンドコードのフロントエンドへのリンクはありませんか?基本的に私は私のbackendConfiguration.class.phpファイルを持っている:

私が得た私のテンプレートで
protected $frontendRouting = null ; 

    public function generateFrontendUrl($name, $parameters = array()) 
    { 
    return 'http://localhost:8080/frontend_dev.php'.$this->getFrontendRouting()->generate($name, $parameters); 
    } 

    public function getFrontendRouting() 
    { 
    if (!$this->frontendRouting) 
    { 
     $this->frontendRouting = new sfPatternRouting(new sfEventDispatcher()); 

     $config = new sfRoutingConfigHandler(); 
     $routes = $config->evaluate(array(sfConfig::get('sf_apps_dir').'/frontend/config/routing.yml')); 

     $this->frontendRouting->setRoutes($routes); 
    } 

    return $this->frontendRouting; 
    } 

echo link_to('Log out', sfContext::getInstance()->getConfiguration()->generateFrontendUrl('dashboard/login')) 

ダッシュボード/ログインは有効なパスであるが、これは返す: ルートが存在しません。 ..500内部サーバーエラー

あなたは何を考慮していますか?

はまた、参照のための私のrouting.ymlファイル投稿:

# default rules 
homepage: 
    url: /
    param: { module: dashboard, action: index } 

# generic rules 
# please, remove them by adding more specific rules 
default_index: 
    url: /:module 
    param: { action: index } 

default: 
    url: /:module/:action/* 

答えて

1

を、あなたのフロントエンドrouting.ymlでdasboard /ログインURLと実際のルートを配置しようとしましたか?その後、

dashboard_login: 
    url: /dashboard/login 
    param: { module: dashboard, action: login } 

# default rules 
homepage: 
    url: /
    param: { module: dashboard, action: index } 

# generic rules 
# please, remove them by adding more specific rules 
default_index: 
    url: /:module 
    param: { action: index } 

default: 
    url: /:module/:action/* 

、代わりにモジュール/アクションのルート名を呼ぶ:

echo link_to('Log out', $sf_context->getConfiguration()->generateFrontendUrl('dashboard_login')) 

シモンズ:あなたの代わりにsfContext::getInstance()のテンプレートで$sf_contextを使用することができます。

+0

病気でした!それは働いた、と私はなぜブログはそれについて言及したことがないのだろうか!乾杯! – user1020069

関連する問題