2009-09-02 4 views
1

저는 멍청한데 TG2와 SQLAlchemy에 대한 내 머리를 얻으려고합니다. 현재 내가 씨름하고있는 구체적인 문제는 PK 필드가 autoincrement로 구성된 경우 테이블에 새 행을 삽입하는 방법입니다. 예를 들어TurboGears2/SQLAlchemy : 자동 증가 기본 키가있는 테이블에 새 행 삽입

: 나는 일부 초기 데이터로 채우 내 websetup.py 파일에서

class Dj(DeclarativeBase): 
    __tablename__ = 'djs' 

    #{ Columns 

    djID = Column(Integer, autoincrement=True, primary_key=True) 
    djname = Column(String) 
    djwebpage = Column(String) 
    #} 

:

내 myproject.model.myproject.py 파일에서 나는 다음과 같은 테이블을 정의했다. 어떻게 데이터의 첫번째 행이기 때문에, I는 수작 I는 (객체 디제이 통해) 디제이 테이블의 제 2 열을 생성 할 websetup.py를 원한다면 단지 "1"

dj = model.Dj("1", "DJ Anonymous", "http://www.djanonymous.com") 

가되도록 djID 정의 내가 그걸 할까?

이전에는 여러 가지 일을 시도했지만 운이 없었습니다. 예를 들어 동일한 형식을 사용했지만 djname 및 djwebpage 열에 대해 2 개의 문자열 만 포함 된 경우 충분한 인수를 제공하지 않았다고 불평하는 오류가 발생합니다.

물론 궁극적으로 테이블에 새로운 항목을 삽입 할 수있는 컨트롤러를 만드는 방법을 알아야합니다.하지만 한 번에 한 걸음 내 단계를 배우고 성공적으로 성공할 것입니다. websetup.py 파일을 통해 테이블에 여러 행을 미리 채 웁니다. 바라기를하면 다음 단계로 넘어갈 수있는 단서가 될 것입니다.

미리 감사드립니다.

답변

1

글쎄, 당신 문제는 간단합니다. (너무 오랫동안 대답하지 못해 감동했습니다.)

  • 먼저 이름을 "djID"로 지정하십시오. 왜 이드 뿐이 아닌가?
  • 둘째로 삽입하지 마십시오. 자동 증가 때문입니다.
  • 세 번째로 first basic SA 자습서에서 이에 대해 설명합니다.