Web2py AJAX автозаполнение и auth.user_id - PullRequest
1 голос
/ 24 сентября 2011

Я получил эти таблицы

db.define_table('sender',
  Field('id'),
  Field('user_id', auth.user_id),
  Field('name'), # e.g. Daniel
  Field('email'),# e.g. daniel@daniel.com
  Field('opening'), # e.g. Dear Daniel
  ...)           

db.define_table('receiver',
  Field('id'),
  Field('user_id', auth.user_id),
  Field('name'),  # e.g. John
  Field('email'), # e.g. John@john.com
  Field('tel'),   # e.g. 111 222 111
  ...)

db.define_table('letter',
  Field('id'),
  Field('user_id', auth.user_id),
  Field('sender', db.sender.id),     # e.g. Daniel
  Field('receiver', db.receiver.id), # e.g. John
  Field('opening'), # should be filled automatically when choosing/changing the value of "sender"
  ...)

Я использовал это:

db.letter.opening.widget = SQLFORM.widgets.autocomplete(request, db.receiver_profile.opening, id_field=db.receiver.id)

показывает все значения, хранящиеся в receiver, но я хочу показать только те значения, которые принадлежат пользователю (db(db.receiver.user_id==auth.user_id).select(db.receiver.opening))

1 Ответ

0 голосов
/ 25 сентября 2011

заменить

db.letter.opening.widget = SQLFORM.widgets.autocomplete(request, db.receiver_profile.opening, id_field=db.receiver.id)

с

db.letter.opening.widget = SQLFORM.widgets.autocomplete(request, db.receiver_profile.opening, id_field=db.receiver.id,db=db(db.receiver.user_id==auth.user_id))
...