2016-01-22 70 views
0

我嘗試渲染我的管理類在奏鳴曲中的模式的列表動作,但我找不到正確的方法來做到這一點? 有人可以幫我嗎? 我只想要數據網格,而不是所有的頁面(菜單,頂欄等...)。 其實我這樣做這樣的:在模態奏鳴曲渲染列表動作管理

<a href="#" class="btn btn-sm btn-default" data-toggle="modal"  data-target="#basicModal1">En Cours modal</a> 
<div class="modal fade" id="basicModal1" tabindex="-1" role="dialog" aria-labelledby="basicModal" aria-hidden="true"> 
<div class="modal-dialog"> 
    <div class="modal-content"> 
    <div class="modal-header"> 
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&amp;times;</button> 
       <h4 class="modal-title" id="myModalLabel">Modal title</h4> 
       </div> 
      <div class="modal-body"> 
       {{render (controller('MonBundle:Controller:list',{'id':object.id}))}} 

      </div> 
      <div class="modal-footer"> 
       <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
     </div> 
    </div> 
    </div> 
    </div> 

但我得到這個錯誤與渲染:

Error: Call to a member function getRelativePath() on null 

回答

0

整頁顯示,因爲你是包括標準控制器動作的模板。奏鳴曲使用app.request.isXmlHttpRequest的條件來檢測視圖是以模式(通過AJAX)還是以標準方式打開。

所以,你可以通過以下步驟解決問題:

1)綁定JS函數(上按一下按鈕打開模態)。

2)當按鈕按下,負載URL和響應主體粘貼到.modal-body

網址:{{ path('your-list-action-name', {'id': object.id}) }}

當你從你的頁面,但將列表中添加一個新的記錄到列表中它會解決這個問題顯示舊的記錄(因爲在你的片段中,列表渲染一次,在模態第一次渲染)。

其他信息可以在索納塔的ORM管理軟件包(如果使用ORM)中找到Resources/views/CRUD/edit_orm_many_association_script.html.twig

相關問題