현재 업데이트 목록에 문제가 있습니다. 나는 Rails와 AngularJS를 사용합니다.
JS 측에서 각도 $ 리소스 기능이있는 정렬 가능한 기능을 jQueryUI에 연결하여 정렬 된 텍스트 블록을 읽고 업데이트 (두 번째 단계에서 삭제 및 작성)했습니다.
예 :
"- 1가 lorem ipsum의"
"- 2 초 위치가 lorem ipsum의"
"- 3 번째 위치"AngularJS와의
컨트롤러 내가 가지고 :
정렬 된 요소 후 63,210function DndCtrl($scope, $resource) {
var Feed = $resource('/users/'+ userId +'/test/:id', {id: '@id'}, {'update': {method:"PUT", isArray:true}});
$scope.tests = Feed.query(function() {
$scope.updateSortable = {
// jQueryUI methods
update: function(e, ui) {
// trigger after user ends dropping item
for (var i=0; i<$scope.tests.length; i++) {
var t = $scope.tests[i];
t.position = i+1;
t.$update();
}
},
placeholder: "t-hightlight",
axis: 'y'
};
});
} // end DnD
출력 :
PUT http://demo.mytest.dev/users/1/test/1 401 (Unauthorized)
및 서버 로그에
는 : Rails CSRF Protection + Angular.js: protect_from_forgery makes me to log out on POST HuangYuHei에서 대답하고 그것을 시도 :warning can't verify csrf
그래서 나는이 주제에 발견했다. 다음
콘솔 출력 :
GET http://demo.mytest.dev/users/1/test 404 (Not Found)
그리고 서버 로그에 :
Test Load (1.9ms) SELECT "tests".* FROM "tests" WHERE "tests"."id" = 2 LIMIT 1
Unpermitted parameters: id
내가 직접 레일 콘솔에서 요청을 테스트하고 그것을 잘 항목을 반환.
내가 뭘 잘못하고있어? Rails 설정 부분에 뭔가 빠졌습니까? 또는 각도 부분?
을 오 덕분에 나는 우리가 솔루션에 가까운 것 느낀다! 두 솔루션 모두 시도해 보았고 attr_accessible을 모델에 추가했습니다. "Argument Error (Unknown : id)"로 500 상태에서 오류 출력이 변경됩니다. – user1713964
몇 가지 조사를 한 후에 나는이 beahviour를 가지고있다. 각도가 $ update이고, Rails가 DB에 잘 저장되어있다. 모두 괜찮습니다. 그러나 FrontEnd에서 콘솔은 500 오류를 반환합니다. 업데이트가 제대로 작동하기 때문에 어떻게 표시하지 않을 수 있습니까? – user1713964
이 오류를 생성하는 것은 레일에 의해 주어진 응답이었습니다. 레일즈에서 업데이트 할 때 save()를 수행하고 페이지를 렌더링하면됩니다. :) 당신의 지적에 감사드립니다. – user1713964