Thank you Villas, i updated my controller like this & its giving results. I 
a sure there is a better way to do this, a ore cleaner way & if anyone 
cares to improve my code please dont hesitate so i could update mine & 
learn more:

def my_form_processing(form):
    if form.vars.class_session=='single session':
        single_session_times=['0830-0930hrs', '0930-1030hrs', '1100-1200',
'1200-1300', '1400-1500', '1500-1600', '1600-1700']
        the_time=random.choice(single_session_times)
        form.vars.the_time2=the_time

    if form.vars.class_session=='evening single session':
        evening_single_session_times=['1730-1830', '1830-1930']
        the_time=random.choice(evening_single_session_times)
        form.vars.the_time2=the_time

    if form.vars.class_session=='double session':
        double_session_times=['0830-1030', '1100-1300', '1400-1700']
        the_time2=random.choice(double_session_times)
        form.vars.the_time2=the_time2

    if form.vars.class_session=='evening double session':
        evening_double_session_times=['1730-1930']
        the_time=random.choice(evening_double_session_times)
        form.vars.the_time2=the_time

@auth.requires_login()
def index():
    form=SQLFORM(db.lecture)
    if form.process(onvalidation=my_form_processing).accepted:
        response.flash=T('Lecture Entered')
    return locals()
Regards;

Mostwanted

On Wednesday, July 15, 2020 at 5:47:18 PM UTC+2, villas wrote:
>
> Before submission of form, use JS.
> or
> After submission,  allocate the time in the controller using 
> *onvalidation*.  See  
> http://www.web2py.com/books/default/chapter/29/07/forms-and-validators#onvalidation
>
> On Wednesday, 15 July 2020 13:58:28 UTC+1, mostwanted wrote:
>>
>> I thought it would be easy but its not, wrong values are being selected 
>> from wrong lists! After submitting a form I wanna check to see if the 
>> session field is either a single_session, double_session, 
>> evening_single_session or evening_double_session, depending on what it is I 
>> want time to be selected randomly from an appropriate list and inputted 
>> into the session_time field but wrong values from wrong lists are entered, 
>> information gets mixed up!
>>
>> model code:
>> db.define_table('lecture',
>>                 Field('subject_name', 'reference subject'),
>>                 Field('department', 'reference departments'), #HERE
>>                 Field('theLevels', label=SPAN('Levels'), requires=
>> IS_IN_SET(['1.1', '1.2', '2.1', '2.2', '3.1', '3.2', '4.1', '4.2'], 
>> zero='---Select 
>> A Level---')), #HERE
>>                 Field('lecturer', 'reference lecturer'),
>>                 Field('class_session', requires=IS_IN_SET(['single 
>> session', 'double session', 'evening single session', 'evening double 
>> session'], zero='----Select A Session Period----')),
>>                 Field('session_time', readable=False, writable=False),
>>                 Field('class_room', readable=False, writable=False),
>>                 Field('controller', readable=False, writable=False)
>>                )
>>
>> single_session_times=['0830-0930hrs', '0930-1030hrs', '1100-1200',
>> '1200-1300', '1400-1500', '1500-1600', '1600-1700']
>> double_session_times=['0830-1030', '1100-1300', '1400-1700']
>>
>> evening_single_session_times=['1730-1830', '1830-1930']
>> evening_double_session_times=['1730-1930']
>> '''
>> After submitting the form, have system scheck the session, if the session 
>> is any of whats defined give it a proper time
>> '''
>> if db.lecture.class_session=='single session':
>>     the_time=random.choice(single_session_times)
>>     db.lecture.session_time.default=the_time
>>
>>     
>> elif db.lecture.class_session=='evening single session':
>>     the_time=random.choice(evening_single_session_times)
>>     db.lecture.session_time.default=the_time
>>
>>     
>> elif db.lecture.class_session=='double session':
>>     the_time=random.choice(double_session_times)
>>     db.lecture.session_time.default=the_time
>>
>>     
>> elif db.lecture.class_session=='evening double session':
>>     the_time=random.choice(evening_double_session_times)
>>     db.lecture.session_time.default=the_time
>>
>>
>>
>> How can i achieve this with proper results from the intended list
>>
>> Mostwanted
>>
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/web2py/2ea7bb53-665a-436f-8c80-1a29d035b7f6o%40googlegroups.com.

Reply via email to