2008-09-24 5 views
3

Turbogears 프레임 워크에서 광범위한 CRUD (create-retrieve-update-delete) 인터페이스를 수행하기위한 훌륭한 패키지 또는 방법이 있습니까? FastDataGrid 위젯은 유용 할 수있는 너무 많은 블랙 박스이며, CRUDTemplate은 내 자신을 압연하는 것보다 더 많은 문제가 있습니다. 아이디어? 제안?Turbogears에서 CRUD 수행

답변

0

CRUDTemplate이 다소 복잡해 보이지만, 내가 선택한 ORM을 사용하여 CRUD/ABCD를 구현할 수 있다고 말하고 싶습니다. 얼마나 많은 부분을 자동화 하느냐에 달려 있습니다 (일반적으로 모델/스키마를 미리 정의하는 것을 의미합니다). SQLAlchemy 또는 SQLObject를 사용하여 직접 작성한 경우 더 많은 것을 배우고 더 잘 제어 할 수 있습니다.이 중 SQLObject가 TurboGears와 잘 작동합니다.

+0

코드 생성기가 너무 싫어서 모델을 변경했기 때문에 무언가를 조정해야하고 재생성해야하는 경우 어떻게해야합니까? –

0

더 많은 파고 및 해킹을 한 후 응용 프로그램에 Cakewalk 인터페이스를 떨어 뜨리는 것은 그리 어렵지 않습니다. 그것은 많은 노력 없이는 꽤 좋지는 않지만 즉시 작동합니다.

+1

Cakewalk? 아마도 Catwalk를 의미 할 것입니다. TG1에서는 약간 깨졌습니다. TG2에서는 sprox 기반이므로 굉장합니다. 비록 tgext.admin을 직접 사용해야합니다. –

3

정말 sprox (http://sprox.org/)를 살펴 봐야합니다.

RESTController를 기반으로 작성되었으며, 매우 문서 작성이 쉬우 며 (imo), 데이터베이스에서 양식과 유효성 검증을 "마술처럼"생성하고 작성할 수있는 최소한의 코드 만 남겨 둡니다. 나는 그것으로 일하는 것을 정말로 즐긴다.

희망 하시겠습니까?

+0

sprox는 CRUD를 만드는 데 탁월합니다. –

2

CRUD가 필요합니다. 이를 달성하는 가장 좋은 방법은 모든 절름발이 코드를 제거하는 도구를 사용하는 것입니다. 이 도구는 tgext.admin입니다. 그러나 여러 단계에서 사용할 수 있습니다.

  • Catwalk2 (빠른 시작 모델을 인식하는 tgext.admin의 기본 구성).
  • AdminController이면 모든 모델 (또는 그 목록)을 가져오고 모든 모델에 대해 CRUD를 만듭니다.
  • CrudRestController은 하나의 객체를 취하여이를위한 CRUD를 생성합니다.
  • RestController은 하나의 개체를 사용하고 양식 또는 데이터 표시가없는 REST API 만 제공합니다.
  • 일반 Sprox을 사용하면 개체를주고 기본 클래스에 따라 neww 서식이나 편집 대상 또는 테이블보기 또는 단일 레코드보기를 얻을 수 있습니다.