Future standard GUI library

Frank Millman frank at chagford.com
Fri Jun 14 01:39:08 EDT 2013


"Chris Angelico" <rosuav at gmail.com> wrote in message 
news:CAPTjJmo+fWsCD3Lb6s+zmWspKzzk_JB=pbcvfLBZjGCFxvM9HA at mail.gmail.com...
> On Thu, Jun 13, 2013 at 7:32 PM, Frank Millman <frank at chagford.com> wrote:
>> I am talking about what I call 'field-by-field validation'. Each field 
>> could
>> have one or more checks to ensure that the input is valid. Some can be 
>> done
>> on the client (e.g. value must be numeric), others require a round-trip 
>> to
>> the server (e.g. account number must exist on file). Some applications 
>> defer
>> the server-side checks until the entire form is submitted, others perform
>> the checks in-line. My preference is for the latter.
>
> It's not either-or. The server *MUST* perform the checks at the time
> of form submission; the question is whether or not to perform
> duplicate checks earlier. This is an absolute rule of anything where
> the client is capable of being tampered with, and technically, you
> could violate it on a closed system; but it's so easy to migrate from
> closed system to diverse system without adding all the appropriate
> checks, so just have the checks from the beginning.
>

In my case, it is either-or. I do not just do field-by-field validation, I 
do field-by-field submission. The server builds up a record of the data 
entered while it is being entered. When the user selects 'Save', it does not 
resend the entire form, it simply sends a message to the server telling it 
to process the data it has already stored.

> In terms of software usability, either is acceptable, but do make sure
> the user can continue working with the form even if there's latency
> talking to the server - don't force him/her to wait while you check if
> the previous field was valid. I know that seems obvious, but
> apparently not to everyone, as there are forms out there that violate
> this...
>

I plead guilty to this, but I am not happy about it, hence my original post. 
I will take on board your comments, and see if I can figure out a way to 
have the best of both worlds.

Frank






More information about the Python-list mailing list