논리적 인 관점에서 고객을 추가하기 전에 예를 들어 주소를 추가하는 것과 같은 경우가 있습니다. 내가 주소를 완료하면 고객을 만들 수 있습니다 하나 개의 형태를 생성 할 수 있다면중첩 된 CRUD 양식 생성
db.define_table('address',
Field('line1','string', required=True),
Field('line2','string'),
Field('suburb','string', required=True),
Field('post_code','integer'),
Field('email','string')
)
db.address.post_code.requires = IS_INT_IN_RANGE(0000, 9999)
db.address.email.requires = IS_EMAIL()
db.define_table('customer',
Field('name', 'string', required=True, unique=True),
Field('locations', 'list:reference db.address', required=True),
Field('comment', 'string')
) # quick aside: how would I ensure there isn't another customer with same name+location?
db.address.requires = IS_IN_DB(db, db.address, '%(line1)s' + ', ' + '%(suburb)s', multiple=True)
그래서 관리가 훨씬 더 논리적이 될 것이다.
그러나 데이터베이스에 이미있는 레코드를 선택하고 "추가"버튼을 갖기 만하면 유용 할 것입니다. javascript로 롤링합니다. 필드가 비어 있으면 기본적으로 열립니다 (및 .requires 되지 않도록).
이 중첩 CRUD를 어떻게 생성합니까? 모든 제안
덕분에