2013-04-12 5 views
0

나는 데프web2py - sqlite3를 -> "_lazy_tables"오류

database = DAL('sqlite://userhistory3.db') 
database.define_table('userjob', Field('UserID'),Field('JobID')) 
session.database=database 

에이 데이터베이스를 만들려고하지만 난 다른 데프

sd=session.database  
sd.userjob.insert(UserID=auth.user_id,JobID=job_Id) 
database.commit() 

에 값을 삽입하려고 할 때이 오류가 발생했습니다 'DAL'개체에 '_lazy_tables'특성이 없습니다. 어떻게해야합니까? '

database = DAL('sqlite://userhistory3.db') 
sd=session.database 

을하지만 검색 연결 원 : 그런 것 같 - 당신이 세션에서 DAL (데이터베이스 연결) 개체를 검색 할 때

답변

0

, 먼저 동일한 연결 문자열을 다시 연결 경우에만 작동합니다 테이블 정의가 없으므로 사용자 목적에 도움이되지 않습니다.

일반적으로 DAL 개체를 세션에 저장할 필요가 없습니다. DAL 작성 및 테이블 정의를 모델 파일에두면 모든 요청에 ​​사용할 수 있으므로 세션에서 저장 및 검색 할 필요가 없습니다.

또한 애플리케이션 코드 내에서 db.commit()으로 전화 할 이유가 없습니다. 요청이 끝나면 자동으로 커밋됩니다.