It turns out that the issue wasn't even related to IS_NOT_EMPTY()... Since
the field wasn't include it couldn't block the form to submit... Though I
may have the issue in other form where it is included..

What was the root cause of my issue was in fact (as far as I can
understand) that the id field of the record wasn't include in custom form
which prevent form.process() to process correctly the form...

Could it be cause of _enable_record_versioning() that I active over
auth_user table somewhat recently... Issue run out without me noticing it...

I am glad that I finally resolve this one...

Richard

On Wed, Mar 9, 2016 at 1:58 PM, Richard Vézina <ml.richard.vez...@gmail.com>
wrote:

> Damn it, there is surely something else wrong also... Even with the
> removal I seems to have difficulty with other fields not included in the
> custom form which are removed with readable and writable False...
>
> I start to be clue less about the root cause of this issue... This form
> has worked properly for year now and it seems now completly broken...
>
> Richard
>
> On Wed, Mar 9, 2016 at 12:19 PM, Richard Vézina <
> ml.richard.vez...@gmail.com> wrote:
>
>> Hello Anthony,
>>
>> Last suggestion seems the way to go... I do understand and I realise by
>> trying to hack IS_NOT_EMPTY() that it makes no sens to refactoring it in
>> anyway to make it support bool null since it never going to allow null
>> value to be input in the DB. Though it certainly shouldn't prevent a form
>> to submit properly when used with a bool type field. I may have use it by
>> mistake with bool field... But I think, base on this post which is not mine
>> in the first place, that I am not alone thinking that it usage in
>> conjonction of a bool type field will prevent the form to allow null bool
>> type field input (which is wrong thought since html checkbox can't return
>> null value)...
>>
>> So, you idea if apply, is a really good way to fix the situation...
>>
>>
>> *How I come here:*
>> I have hunted so much the reason for a bug that I had with a custom form
>> which only appears recently which I am still not sure why... Stange enough
>> even if the form wasn't submit and the system was throwing ticket, computed
>> _thumbnail_ files from compute upload fields related to an main upload
>> field of user profile picture were deleted. The form was returning error,
>> but the field wasn't include in the form so error can't be seen on form
>> submission. I guess what was really happen was that the insert process was
>> falling kind of too late and the _before_update callback was already
>> triggered... False positive ticket related to the actual issue :
>> https://github.com/web2py/pydal/issues/330
>>
>> So thumbnails get delete and then the insert fails...
>>
>> For now I think that as a workaround I can just remove the IS_NOT_EMPTY()
>> from field definition that was causing the issue.
>>
>> Thanks for your help Anthony
>>
>> Richard
>>
>> On Tue, Mar 8, 2016 at 4:41 PM, Anthony <abasta...@gmail.com> wrote:
>>
>>> On Tuesday, March 8, 2016 at 3:01:48 PM UTC-5, Richard wrote:
>>>>
>>>> For instance how someone can acheive the same than NullBooleanField of
>>>> Django :
>>>>
>>>>
>>>> https://docs.djangoproject.com/en/1.9/ref/models/fields/#django.db.models.NullBooleanField
>>>> <https://www.google.com/url?q=https%3A%2F%2Fdocs.djangoproject.com%2Fen%2F1.9%2Fref%2Fmodels%2Ffields%2F%23django.db.models.NullBooleanField&sa=D&sntz=1&usg=AFQjCNFC6L_ivJ7kGqBBMOORpIo7UZJIcQ>
>>>>
>>>
>>> In web2py, a regular boolean field allows NULLs, so I don't think we
>>> need a special field type. In Django, the NullBooleanField is intended to
>>> be used with the NullBooleanSelect widget, which actually includes three
>>> options (with "uknown" being equivalent to a NULL). I suppose in web2py,
>>> you could achieve this with a standard select widget (with a None option),
>>> and then use an IS_IN_SET or IS_NOT_EMPTY validator.
>>>
>>>
>>>> One part of the problem with IS_NOT_EMPTY() is that it seems to be
>>>> intent to work only with string field type, from the book :
>>>>
>>>
>>> It does work with other types of values, but there isn't much point to
>>> it when working with boolean form fields, as they cannot be empty by
>>> definition (though I suppose the distinction could be made when using the
>>> .validate_and_insert method).
>>>
>>>
>>>> Or we can just fix IS_NOT_EMPTY() so it works with boolean type field
>>>> so that it returns false when the checkbox is leave blank as it should...
>>>>
>>>
>>> There's nothing to fix with IS_NOT_EMPTY() -- it doesn't know what type
>>> of field produces the value it is passed, so it cannot behave differently
>>> depending on the type of field. We could instead change the behavior of
>>> SQLFORM so it automatically converts empty checkboxes to False values,
>>> which would then pass validation with IS_NOT_EMPTY.
>>>
>>> Anthony
>>>
>>> --
>>> 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.
>>>
>>
>>
>

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