1

[배경을 아래] 내 데이터를 Python의 SQLObject에서 백엔드 모델로 만들었습니다. 지금은 SQLObject를 dict로 변환하고 dict의 모든 키를 가져 와서이를 JSON 문서 (JavaScript 배열)로 내보내고 있습니다.좋은 아이디어/Spine을 확장하는 가장 좋은 방법.

Spine.Model.extend({ 
    fromList: function(name, list){ 
     var model = Spine.Model.setup(name, list); 
     return model; 
    } 
}); 

이 방법을 사용하는 것이 좋습니다. Spine은 이미이 기능을 제공합니까? Spine.Model 클래스를 확장하는 가장 좋은 방법입니까?

배경 :

. Flask를 사용하여 GUI 응용 프로그램에서 웹 응용 프로그램으로 이식하는 Python 응용 프로그램이 있습니다.

내가보기 부분을하고 있으며 데이터 조작/앱 제어를 위해 JavaScript 프레임 워크를 사용하는 것이 합리적이라는 것을 깨달았습니다.

많은 연구 끝에 Spine (API가 처음 읽기에서 나에게 가장 의미가 있었으며 작성자는 O'Reilly 서적 인 JavaScript Web Application을 작성하여 적절한 참조가 있음)에 정착했습니다.

백엔드에서 이미 데이터를 모델링 했으므로이 구성을 내보내고 이것을 사용하여 Spine 모델을 자동화하여 기록중인 데이터가 항상 동기화되도록하십시오 (이 내 백엔드 모델을 변경하면 프런트 엔드는 다음 페이지로드시 자동으로 변경됩니다.

+0

남자와 오기 전에, 당신이 당신의 Complicator Gloves에 넣지 않았는지 확인이 나를 누구든지 어떤 아이디어가 ... 다니지있어? – tkone

답변

1

데이터베이스의 모델을 기반으로 클라이언트 측 JavaScript를 사용하여 모델을 동적으로 생성하는 것에 대해 생각하고있는 것처럼 보입니다. 파이썬 사전 -> JSON이 둘 사이의 연결 표현으로 사용됩니다.

이것은 복잡하게 들리지만 나는 답변이 없습니다. 그것은 불필요하게 복잡 할 수도 있습니다 :). 그러나 그것은 당신이 결정하기위한 것입니다. 하지만 대체 솔루션이 있습니다.

왜 Spine 모델을 동적으로 생성하고 정적 파일을 제공해야합니까? 그런 다음 자바 스크립트 나 CoffeeScript로 척추 모델에 대한 유효한 코드를 출력하는 Python 프로그램을 작성하면됩니다 (개발 중에 모델이 자주 또는 간단하게 변경되는 경우 빌드 프로세스의 일부로).

다시 말하면, 생성하기 위해 정기적으로 변경되는 많은 양의 모델이 없으면 불필요하게 복잡 할 수 있습니다. 그럼에도 불구하고 필요한 것은 백엔드 데이터가 척추에서 올바르게 모델링되었는지 확인하고 모든 코드를 손으로 직접 확인하는 검증 도구입니다. 모델에 필요한 데이터를 포함하도록 코드를 손쉽게 처리 할 수 ​​있습니다. http://spinejs.com/docs/models

실제로 척추 모델의 실제 "데이터"설정은 @configure "Contact", "first_name", "last_name"과 같이 간단합니다. 이제 척추 모델에는 first_name과 last_name이 있습니다.

이 생각 :)

+0

Spine 모델을 동적으로 생성하고 있습니다. JavaScript 코드를 직접 생성하는 대신 모델의 JSON 표현을 생성하고이를 사용하여 Spine 모델을 인스턴스화합니다. 너는 장갑에 대해 옳아 ... 나는 아직 커피점에 팔리지 않았어. 추상화 레이어에 대해 이야기하십시오 ... – tkone

+0

그래, 나는 CoffeeScript에서도 팔리지 않아. JavaScript와 JQuery 기술을 먼저 익히고 커피 스크립트에 대해 더 잘 이해할 수 있습니다.그래서 정말로, 자바 스크립트 대안 ATM에서 흥미로운 주요 이유는 자바 스크립트를 잘 모르는 것입니다. 커뮤니티에 방향이 있다면, 나는 그걸로 갈 것이지만, 양면을 주장하는 배우고 견고한 JavaScript 개발자가 있습니다. 그래서 나는 그들의 길을 따라갈 것입니다. JavaScript 안팎을 배우고 나 자신을 결정하십시오. 아마도 CoffeeScript는 그때까지 많이 사용되거나 죽을 것입니다. –