2017-01-28 8 views
1

私はaosの呼び出しのためのルートを生成するためにfosJsRoutingを使用しています。FOSJsRoutingBundle - ルート "xxx"が存在しません

OS:Ubuntuの16.04 + nginxの+ PHPの7

app/Kernel.php 
    public function registerBundles() 
    { 
     $bundles = array(
      new FOS\JsRoutingBundle\FOSJsRoutingBundle(), 
      ); 

と設定...

app/config/config.yml 
fos_js_routing: 
    resource: "@FOSJsRoutingBundle/Resources/config/routing/routing.xml" 

fos_user: 
    resource: "@FOSUserBundle/Resources/config/routing/all.xml" 
app: 
    resource: "@AppBundle/Controller/" 
    type:  annotation 

これはJsの

pablo_user_getonline: 
    path:  user/getonline 
    defaults: { _controller: pabloUserBundle:User:getonline } 
    methods: [POST,GET] 
    options: { expose: true } 

をルーティングバンドルです:

$(document).ready(function(){ 
     $.ajax({ 
      url: "pablo_user_getonline", 
      method: "POST", 
      data:[], 
      success: function (result) { 

       $('#delete-progress').addClass('hidden'); 

       if(result.data == 1) 
       { 
        alert("Status changed"); 
       } 
       else 
       { 
        $('#message-danger').removeClass('hidden'); 

        $('#user-message-danger').text(result.message); 
       } 
      }}).fail(function(){ 
      alert('ERROR'); 
     }); 
}); 
JS-ルーティング:私はアプリ/コンソールFOSを実行すると

とレイアウト10 ...

{% block javascripts %} 
<script src="{{ asset('public/js/jquery-3.1.0.min.js') }}"></script> 
<script src="{{ asset('public/js/bootstrap.min.js') }}"></script> 
<script src="{{ asset('bundles/fosjsrouting/js/router.js') }}"></script> 
<script src="{{ asset('bundles/pablouser/js/bootbox.min.js') }}"></script> 
<script src="{{ asset('bundles/pablouser/js/set-online.js') }}"></script> 
<script src="{{ asset('bundles/pablouser/js/get-online.js') }}"></script> 
<script src="{{ asset('bundles/pablouser/js/noty/packaged/jquery.noty.packaged.min.js') }}"></script> 
<script src="https://gitcdn.github.io/bootstrap-toggle/2.2.2/js/bootstrap-toggle.min.js"></script> 
{% endblock %} 

デバッグはこれを取得:このルートの

+------------------------------+-------------+--------+------+------------------------------+ 
| Name       | Method  | Scheme | Host | Path       | 
+------------------------------+-------------+--------+------+------------------------------+ 
| pablo_user_getonline   | POST|GET | ANY | ANY | /user/getonline    | 
| pablo_user_setonline   | POST  | ANY | ANY | /user/setonline    | 
| pablo_publication_index  | ANY   | ANY | ANY | /publication/index   | 
| pablo_publication_delete  | POST|DELETE | ANY | ANY | /publication/delete/{id}  | 
| pablo_publication_seoprocess | POST  | ANY | ANY | /publication/seoprocess/{id} | 
| get_domain_info_ajax   | POST  | ANY | ANY | /getAjaxDomainInfo   | 
| register_domain    | POST  | ANY | ANY | /registerDomain    | 
+------------------------------+-------------+--------+------+------------------------------+ 

誰もがときRouting.generate発見されました。

私は私がしようとしたので、解決策を見つけるために周りを見てきた:アプリ/設定/ config.yml に公開するために、このルートを追加します。=真

  • を公開する

    • セットオプション
    • symfonyのキャッシュはクリアです
    • アセットがすべてインストールされています。
  • +0

    てみて

    <script src="{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}"></script> 

    を追加する必要がありますRouting.generate(path, parameters)

    url: Routing.generate("pablo_user_getonline"), 

    を使用する必要のあるURLを生成するには: 'Routing.generate(」 route_name '、/ *あなたのparams * /) ' –

    答えて

    0

    あなたはあなたがまた、コンソールで定義されたhere in the documentation

    +0

    ありがとう@gこの行がいつ削除されたのか覚えていません... –

    関連する問題