Расширение существующей базы данных web2py - PullRequest
2 голосов
/ 12 августа 2011

У меня есть приложение web2py. Теперь мне нужно создать новую регистрационную форму, используя таблицу БД, которая включает Поле, для которого требуется строка из другой таблицы.

Это должно быть похоже на то, что вы обычно видите в полях страны в регистрационных формах, за исключением того, что я хочу, чтобы люди могли добавлять значения в таблицу «Страна», если значение еще не существует.

Ответы [ 2 ]

4 голосов
/ 12 августа 2011

Небольшое улучшение предыдущего ответа:

# 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.

1 голос
/ 12 августа 2011

Вы можете использовать отношение один ко многим (см. book ):

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

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

Кстати, вы можете задать свои вопросы в web2py Googlegroup , где Massimo, вероятно, будет более реактивным

...