> Are you saying you want the user to enter a last name for the child and 
>> then have the drop-down dynamically updated with the list of parents with 
>> the entered last name? If so, obviously that cannot be done at the time the 
>> form is generated on the server because you don't know what name the user 
>> will enter in the form. 
>>
>
> Hmm.. I did not thing of that.
> Actually I was trying only "Edit" option - where last name of the child is 
> known, but parent information is not populated.
> Did not think of "New" scenario - my bad.
>>
>>
In the "edit" scenario, you do have the child last name, so you can take 
the approach I showed, though you have to set the validator after you 
retrieve the relevant record. So you would do something like:

child_record = db.child([some id])
db.child.parents.requires = IS_IN_DB(db(db.parent.lname = child_record.
last_name), ...)
edit_form = SQLFORM(db.child, record=child_record)
   

> You'll instead have to handle this with Javascript in the browser, 
>> possibly with an Ajax call back to the server to populate the list 
>>
> (unless the list of parents is small enough to send to the browser with 
>> the initial page load).
>>
>
Makes sense. In that case :
>

should I even use "reference parent" ? Cause I think it will automatically 
> create and populate the widget for me (which I think I will need to hide 
> somehow ?)
>

You still want it to be a reference field. If you don't want the default 
widget associated with the IS_IN_DB validator, you can always put it in a 
list (which suppresses the drop-down list widget):

    Field('parents', 'list:reference parent', requires=[IS_IN_DB(...)])

Anthony
 

-Mandar

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to