2011-08-10 1 views
1

Rails 및 Django와 같은 전통적인 웹 프레임 워크는 스키마에 해당하는 HTML 양식을 생성하는 방법을 가지고 있습니다 - 데이터베이스의 TABLE .CouchApp (또는 모든 JSON 문서)에 대한 HTML 양식 생성 방법

어떻게 CouchDB와 작동합니까? (테이블이없고 스키마가 없음)

사용자 정의 양식을 손으로 작성하여 해당 모델을 "모델/스키마"로 사용합니까? "모델"이 자바 스크립트에 정의되어 있습니까? 자동 생성 된 양식을 허용합니까? "모델"또는 이와 유사한 JSON 문서가 정의되어 있습니까?

또한 전통적인 HTML 양식은 "키"당 하나의 값으로 단일 "레코드"를 처리합니다. JSON 문서는 하나의 키 또는 다른 중첩 된 문서에서 값 목록을 가질 수 있습니다! - 전통적인 HTML 양식은이를 처리하지 못합니다! JSON 문서 (알려진 "doctype"의 문서조차도)에는 "추가"(정의되지 않은) 필드가있을 수 있습니다. 누락 된 필드가있을 수 있습니다. 예상되는 값과 다른 유형의 필드를 가질 수 있습니다 . 이 모든 것들은 전통적인 HTML 양식에 의해 처리되지 않습니다.

전통적인 HTML 양식보다 사용자가 JSON 문서와 상호 작용할 수있는 더 좋은 방법이 있습니까?

답변

1

CouchDB는 스키마가없는 json을 보유하고 있지만 프리젠 테이션 측면에서 json 스키마를 정의 할 수있다. 그런 다음이 json 스키마를 inputEx에 제공하여 양식을 생성 할 수 있습니다. http://neyric.github.com/inputex/examples/json-schema.html

InputEx은 매우 유연하고, 속성 배열, 객체, 특수 편집기를 처리합니다 :

는 여기를 참조하십시오. json 스키마 표준이 잘 ​​정의되어 있지 않다는 것을 이해하십시오. CRUD 작업을 수행하기 위해이 도구를 사용하고 있다면 괜찮습니다.

시간이 지남에 따라 양식이 발전하고 스키마가 변경되면 실제로 couchdb와 관련이 없습니다. 그러나 사용자에게 새로운 스키마로 데이터를 이전하는 방법을 제공해야 할 수도 있습니다.

+0

Kanso는 CouchDB를 가진 환상적이다. 그것은 매력적인 접근법을 제공합니다. 고려해야 할 한 가지는 '런타임'에서 '컴파일 시간'까지 스키마를 변경할 수 있어야합니다. inputex 방식을 사용하면 사용자가 스키마를 정의 할 수 있습니다. 조사/설문지 작성 앱과 같습니다. Kanso는 스키마가 개발자 컨트롤에 있고 앱과 통합되었을 때 잘 작동합니다. Caolan은 이것을 확인해야 할 수도 있습니다. –

+0

예, 라이언입니다. 사용자가 스키마를 동적으로 변경하려고 할 때 Kanso의 유형 시스템이 최상의 솔루션은 아닙니다. 그러나 개발자가 스키마를 작성하는 경우에는 멋지다.) – Caolan

1

Kanso CouchApp 프레임 워크는 CouchDB를위한 가장 포괄적 인 스키마 및 형태 생성 도구를 제공합니다 http://kansojs.org

예 사용에 대한 튜토리얼을 살펴보십시오. 스키마 정의는 그룹에서 CouchDB로 작업 할 수 있도록 만들어졌으며 임베디드 객체 및 기타 복잡한 JSON과 유사한 구조를 허용하므로 매우 유연한 형식 (JSON 스키마보다 훨씬 더)입니다.

또한 자동으로 스키마 정의에서 양식을 생성하거나 사용자 정의 필드, 위젯, 유효성 검사기, 권한이를 확장 할 수 있습니다, 등

관련 문제