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?
>>>>>>>>
>>>>>>>
--