16

누군가가 도움이된다면 나에게 도움이 될 것입니다.레일즈가있는 자바 스크립트 프레임 워크

나는

..., 거기 ember.js 등 backbone.js, batman.js을, 새로운 자바 스크립트 애플리케이션 프레임 워크에 대한 톤을 읽어 봤는데 그리고 나는를 사용하여 인스턴스를 많이 참조 Rails 위에있는 프레임 워크.

누군가 내게 설명 할 수 있습니까? 이것들을 사용하기 위해서 많은 양의 복제가 필요하지 않습니까? 즉. 각 모델과 컨트롤러를 완전히 복제해야합니까? 그렇다면 매번 둘 다 변경해야합니까?

브라우저에서 템플릿을 렌더링 할 때 큰 이점이 있지만 이미 잘 구성된 MVC 구조 위에이 템플릿을 사용할 때 중요한 점을 놓친 것 같습니다.

어떤 이점이 있으며 실제로 보이는만큼 많은 중복이 있습니까?

나는 질문

here을 읽었습니다하지만 중복을 해결하지 않는 것 같습니다.

미리 감사드립니다.

+2

나는 OP와 같은 방식으로 그것을 본다. 레일이 어떻게 만들어 지는지, 누락 된 레고 조각은 컨벤션에 기반한 모델, 컨트롤러 및 뷰의 자바 스크립트를 제공하는 자산 대기열의 미들웨어가 될 것입니다. 바로 레일 원리입니다. 필요한 경우이를 대체 할 수있는 메커니즘과 메커니즘. 나는 정말 재미있는 것을 보지 못하고, 자바 스크립트에서 모델과 비슷한 것을 유지하고 동기화하는 것을 보지 못한다. 필요한 기능이 너무 분명해서 누군가가이를 위해 좋은 해결책을 찾을 것이라고 확신합니다. 그 때까지 나는 단단히 앉아서 상황을 모니터한다. – Jan

답변

8

혜택은 연결된 질문에 설명되어 있습니다. 클라이언트 측에서는 AJAX를 사용하여 단순히 데이터를 표시하고 뷰의 일부를 다시로드하는 것 이상의 작업을 수행하기 어려운 구조를 제공합니다.

앤드류 듀퐁 (Andrew Dupont)은 유지 보수 가능한 자바 스크립트 작성에 관해 presentation at MIX 11을주었습니다. 그는 악취가 많은 JS에서 좀 더 유지 보수가 가능한 코드 기반으로의 여행을 설명합니다. 그것은 가치가있다.

중복은 서버 측에서 수행하는 작업량에 따라 다릅니다. 서버가 데이터 만 제공하는 경우 (예 : Rails 컨트롤러는 모델에 액세스하기 위해 JSON API를 제공하므로 클라이언트 측에서 모델을 복제해야한다.

일부 JSON보기를 제외하고 내 응용 프로그램의 엔터티를 유지하기 위해 JSON 액세스 용으로 만 레일즈를 사용하고 있습니다. 전체 사용자 상호 작용 및 CRUD는 백본 & jQuery를 사용하여 클라이언트에서 발생합니다.

지금까지 모델을 Javascript로 복제하고 서버에 모델을 액세스하고 저장하기위한 컨트롤러를 작성했습니다.

+0

응답 wieczo에 감사드립니다. 일반적인 CRUD 상황에서 레일스 컨트롤러 대 백본 컨트롤러를 얼마나 사용하는지 더 자세히 살펴 봐야 할 것입니다. – Adam

관련 문제