Yes, I did but no difference. I copied all the files in my app to a new app and now everthing is fine. Very strange! Thanks for you help Niphlod!
Op woensdag 7 november 2012 15:04:01 UTC+1 schreef Niphlod het volgende: > > did you try removing one Field at a time inside SQLFORM.factory and see > where the errors pops up ? > > On Wednesday, November 7, 2012 2:58:10 PM UTC+1, Wouter Pronk wrote: >> >> Did some other testing and found simular error on this controler: >> def add_relatie(): >> adres = db.executesql('SELECT adressen.relatie_nummer, " | ", >> adressen.relatie_code, " | ", adressen.relatie_naam FROM adressen left join >> edirelaties on adressen.relatie_nummer = edirelaties.relatie_nummer WHERE >> edirelaties.relatie_nummer is null;') >> form = SQLFORM.factory( >> Field('relatie_nummer', requires=IS_IN_SET([a[0] for a in >> adres],labels >> =[a for a in adres])), >> Field('login_naam', requires=[IS_NOT_EMPTY(),IS_NOT_IN_DB(db, >> 'edirelaties.login_naam'),IS_ALPHANUMERIC(error_message='must be >> alphanumeric!')]), >> Field('password', requires=[IS_NOT_EMPTY(),IS_NOT_IN_DB(db, >> 'edirelaties.password'),IS_ALPHANUMERIC(error_message='must be >> alphanumeric!')]), >> Field('work_directory', requires=[IS_NOT_EMPTY(),IS_NOT_IN_DB(db, >> 'edirelaties.work_directory'),IS_ALPHANUMERIC(error_message='must be >> alphanumeric!')])) >> if form.process().accepted: >> db.edirelaties.insert(**form.vars) >> response.flash = 'Your new edirelatie has been added' >> redirect(URL('show', args=form.vars.id)) >> elif form.errors: >> response.flash = 'form has errors' >> return dict(form=form) >> Any idea? >> >> >> Op woensdag 7 november 2012 12:42:58 UTC+1 schreef Niphlod het volgende: >>> >>> did you try with trunk ? >>> >>> On Wednesday, November 7, 2012 12:38:40 PM UTC+1, Wouter Pronk wrote: >>>> >>>> I just did and it did go in exception. Is my web2py corrupt? >>>> >>>> Op woensdag 7 november 2012 12:17:32 UTC+1 schreef Niphlod het volgende: >>>>> >>>>> create a fresh app and paste your code in it. It shouldn't go in >>>>> exception >>>>> >>>>> form = SQLFORM.factory( >>>>> Field('relatie_id', writable=False, readable=False), >>>>> Field('relatie_nummer', writable=False, readable=False), >>>>> Field('direction', writable=False, readable=False), >>>>> Field('protocol', writable=False, readable=False), >>>>> Field('email', requires=IS_EMAIL()) >>>>> ) >>>>> >>>>> >>>>> >>>>> This doesn't >>>>> >>>>> On Wednesday, November 7, 2012 12:12:24 PM UTC+1, Wouter Pronk wrote: >>>>>> >>>>>> Hello Niphlod, >>>>>> this is the traceback: >>>>>> >>>>>> Traceback (most recent call last): >>>>>> File "/home/wouter/Web2py/web2py/gluon/restricted.py", line 212, in >>>>>> restricted >>>>>> exec ccode in environment >>>>>> File >>>>>> "/home/wouter/Web2py/web2py/applications/edirelaties/controllers/default.py" >>>>>> >>>>>> <http://127.0.0.1:8000/admin/default/edit/edirelaties/controllers/default.py>, >>>>>> line 381, in <module> >>>>>> File "/home/wouter/Web2py/web2py/gluon/globals.py", line 188, in >>>>>> <lambda> >>>>>> self._caller = lambda f: f() >>>>>> File >>>>>> "/home/wouter/Web2py/web2py/applications/edirelaties/controllers/default.py" >>>>>> >>>>>> <http://127.0.0.1:8000/admin/default/edit/edirelaties/controllers/default.py>, >>>>>> line 200, in add_protocol >>>>>> Field('relatie_id', writable=False, readable=False), >>>>>> TypeError: __init__() takes exactly 1 argument (4 given) >>>>>> >>>>>> Where should I look? >>>>>> >>>>>> >>>>>> Op woensdag 7 november 2012 11:54:24 UTC+1 schreef Niphlod het >>>>>> volgende: >>>>>>> >>>>>>> something else is wrong in your app, that piece of code works >>>>>>> perfectly fine (the fact that you're declaring 5 fields to let display >>>>>>> only >>>>>>> one is quite not understandable but hey, it works nonetheless) >>>>>>> >>>>>>> On Wednesday, November 7, 2012 11:32:39 AM UTC+1, Wouter Pronk wrote: >>>>>>>> >>>>>>>> I have the following code: >>>>>>>> form = SQLFORM.factory( >>>>>>>> Field('relatie_id', writable=False, readable=False), >>>>>>>> Field('relatie_nummer', writable=False, readable=False), >>>>>>>> Field('direction', writable=False, readable=False), >>>>>>>> Field('protocol', writable=False, readable=False), >>>>>>>> Field('email', requires=[IS_EMAIL(),IS_NOT_IN_DB(db, >>>>>>>> 'comprotocol.email')])) >>>>>>>> >>>>>>>> and this is working perfectly in version 1.99 but not in 2.2.1. I >>>>>>>> get an error: >>>>>>>> >>>>>>>> File >>>>>>>> "/home/wouter/Web2py/web2py/applications/edirelaties/controllers/default.py" >>>>>>>> >>>>>>>> <http://127.0.0.1:8000/admin/default/edit/edirelaties/controllers/default.py>, >>>>>>>> line 199, in add_protocol >>>>>>>> Field('relatieid', writable=False, readable=False), >>>>>>>> TypeError: __init__() takes exactly 1 argument (4 given >>>>>>>> >>>>>>>> What is wrong? >>>>>>>> >>>>>>> --