2011-08-12 9 views
2

기존 web2py 응용 프로그램이 있습니다. 이제 다른 테이블의 행이 필요한 필드가 포함 된 db 테이블을 사용하여 새 등록 양식을 만들어야합니다.기존 web2py 데이터베이스 확장

이 값은 사용자가 '국가'표에 값을 추가 할 수 없도록하려는 경우를 제외하고는 등록 양식의 국가 입력란에 표시되는 것과 유사해야합니다. Btw은

db.define_table('country', 
       Field('name'), 
       Field('desc')) 

db.define_table('user', 
       Field('name'), 
       Field('origin'), db.country)) 

, 당신은 마시모 아마 작은 만들기

답변

4

반응성 될 것 web2py Googlegroup에 질문을 할 수 있습니다

+0

감사합니다. Massimo, 나는 당신의 개선에 감사한다. 나는 또한 감사한다, Google 그룹을 조사 할 것이다. – Jarrod

+0

그냥이 일을 시도했지만 오류가 발생합니다 : 10 진수 int()에 대한 리터럴이 잘못되었습니다 : '배관공'. 'db.define_table (auth.settings.table_user_name, 필드 ('제목', db.title), 형식 = '% (이름)의' ) db.define_table (: 이 내 코드입니다 '제목', 필드 ('이름'), 형식 = '% (이름) s' 그래서 내가 뭘 잘못하고 있는지 혼란스러워. – Jarrod

1

있습니다 (book 참조) 많은 관계로 하나를 사용할 수 있습니다 이전 응답 개선 :

# create auth 
auth = Auth(db) 
# create the country table 
db.define_table('country', 
       Field('name'), 
       Field('desc'), 
       format = '%(name)s') 
# say you want to add it to auth_user table (not yet created) 
auth.settings.extra_fields['auth_user']=[Field('country','reference country')] 
# ask auth to make the auth tables, including auth_user 
auth.define_tables() 

JMax가 맞습니다. 우리는 web2py 메일 링리스트에 더 잘 응답합니다.

+0

감사합니다. 나는 그것이 많은 관계라고 일컬어지는 것을 전혀 모르고 있었다. :) – Jarrod