Symfony2 のビューでテーブルから要素を更新しようとすると、このエラーが発生し続けます:
セルを更新できません (サーバー エラー)
何が問題なのかわからない。ルーティングが間違っていませんか?
JavaScript とテーブルを含む twig(view) ファイル。
コントローラーからテーブルのデータを取得するための JavaScript:
<script language="JavaScript" type="text/javascript">
$(document).ready(function () {
$('#myDataTable').dataTable(
{
"bSort": true,
"bFilter": true,
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "{{ path('CetiucValidateSurveyBundle_renderJson')}}"
}
).makeEditable({
sUpdateURL: "{{ path('CetiucValidateSurveyBundle_updateChange')}}"
}
);
});
</script>
エンティティを更新するコントローラーのメソッド (この例では簡略化されており、要求からデータを取得するだけです)。
public function updateChangeAction(Request $request)
{
$id = $_REQUEST['id'] ;
$value = $_REQUEST['value'] ;
$column = $_REQUEST['columnName'] ;
$columnPosition = $_REQUEST['columnPosition'] ;
$columnId = $_REQUEST['columnId'] ;
$rowId = $_REQUEST['rowId'] ;
return $value;
}
これは、更新アクションのルーティング エントリです。
CetiucValidateSurveyBundle_updateChange:
defaults: { _controller: "CetiucValidateSurveyBundle:Validate:updateChangeAction", _format: json }
pattern: /update
requirements: { _format: (json), _method: POST }
update メソッドを呼び出したときに書き込まれるログは次のとおりです。問題に役立つものは何も見つかりませんでした。
[2012-10-16 03:25:55] event.DEBUG: イベント「kernel.request」をリスナー「Symfony\Bundle\FrameworkBundle\EventListener\RouterListener::onKernelRequest」に通知しました。[] [] [2012-10-16 03:25:55] request.INFO: 一致したルート「CetiucValidateSurveyBundle_renderJson」(パラメーター:「_controller」:「Cetiuc\Bundle\ValidateSurveyBundle\Controller\ValidateController::renderJsonAction」、「_route」 : "CetiucValidateSurveyBundle_renderJson") [] [] [2012-10-16 03:25:55] event.DEBUG: イベント「kernel.request」をリスナー「Symfony\Bundle\AsseticBundle\EventListener\RequestListener::onKernelRequest」に通知しました。[] [] [2012-10-16 03:25:55] event.DEBUG: イベント「kernel.controller」をリスナーに通知しました」25:55] event.DEBUG: イベント「kernel.response」をリスナー「Sensio\Bundle\FrameworkExtraBundle\EventListener\CacheListener::onKernelResponse」に通知しました。[] [] [2012-10-16 03:25:55] event.DEBUG: イベント「kernel.response」をリスナー「Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse」に通知しました。[] [] [2012-10-16 03:25:55] event.DEBUG: イベント「kernel.response」をリスナー「Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse」に通知しました。[] []