After a form has failed to save because that information already exists in the database I wanna try & alter the value that determines a day where the info is saved in the db for the form to be saved in a different day that does not contain similar form details currently attempting to be saved and this should be done automatically without the engaging the user E.G:
def my_validator(form): control=['1', '2', '3', '4' ,'5'] form.vars.controller = random.choice(control) if db((db.lecture.id == form.vars.id) & (d.controller==form.vars. controller) & (db.lecture.lecture_time == form.vars.lecture_time)).count() > 0: if int(form.vars.controller) < int(control[4]): int(form.vars.controller) +1 response.flash=T('Saved in',' ', int(form.vars.controller) +1) if int(form.vars.controller) > int(control[4]): int(form.vars.controller) -1 repsonse.flash=T('Saved in',' ', int(form.vars.controller) -1) else: form.errors.lecturer=SPAN("Record already exists in the whole database", _style="font-weight: bold;") The above code doesnt work but its the concept thats in my head, where can I fix it? On Tuesday, July 21, 2020 at 12:16:29 PM UTC+2, villas wrote: > > Your my_validator function iterates through the whole table. This is OK > when you have a few records, but very inefficient if you have > thousands/millions. Why not simply query the table? Something like this... > > def my_validator(form): > if db((db.lecture.id == form.vars.id) & (db.lecture.lecture_time == > form.vars.lecture_time) > ).count() >0: > form.errors.lecturer=SPAN("Record already exists", > _style="font-weight: > bold;") > > -- 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/9613268d-f125-4358-9fde-d932cb92eb81o%40googlegroups.com.