On Wednesday, September 25, 2013 5:35:44 AM UTC+10, Massimo Di Pierro wrote:
>
> Actually you should never use unicode in this context. You should use utf8.
>

Given that I can use unicode for the values of many other of the html.py 
helpers,
I would suggest that adding support for it for INPUT would be nice.   There 
appears
to be only a single line (for text inputs).
 

> The difference between value and _value in this case is whether, on error, 
> the form should be reset to the value or not.
>

Thanks for the further explanation - still not entirely clear what your 
last 'value' refers to.
To me this explanation is quite different to the online book.

David

 

>
> On Tuesday, 24 September 2013 02:55:38 UTC-5, David Austin wrote:
>>
>> Hi Massimo,
>>
>> Here's a simple test example:
>>
>> Controller:
>>
>>
>> def utfinput():
>>     s = u'\u2026'
>>     form = FORM('Test',
>>                 INPUT(_name='test1', value=s),
>>                 INPUT(_name='doit',
>>                       _type='submit', _value='Submit'))
>>     if form.accepts(request.vars, session):
>>         session.flash = "Accepted"
>>     return dict(form=form)
>>
>>
>>
>> View:
>>
>> {{ extend 'layout.html' }}
>> {{= form }}
>>
>> Resulting html:
>>
>> <form method="post" enctype="multipart/form-data" action="#">Test<input 
>> type="text" value="…" name="test1"><input type="submit" value="Submit" 
>> name="doit"><div style="display:none;"><input type="hidden" 
>> value="5de6bf73-616e-45b8-95e2-751ac1f64716" name="_formkey"><input 
>> type="hidden" value="default" name="_formname"></div></form>
>>
>> If I use the _value parameter instead of the value parameter for test1 
>> (as I have been doing) then it throws
>> an error ticket because the handling of the _value parameter is not 
>> unicode safe.
>>
>> The distinction between value and _value is not entirely clear to me and 
>> I suggest 
>> that the first example in the INPUT section of the book should perhaps use
>> value instead of _value. 
>>
>> In any case, I reckon it should be acceptable to use unicode with _value.
>>
>> David
>>
>>
>> On Tuesday, September 24, 2013 11:36:26 AM UTC+10, Massimo Di Pierro 
>> wrote:
>>>
>>> I think we need to see the source code
>>>
>>> On Monday, 23 September 2013 19:09:32 UTC-5, David Austin wrote:
>>>>
>>>>
>>>>
>>>> On Tuesday, September 24, 2013 4:46:13 AM UTC+10, Massimo Di Pierro 
>>>> wrote:
>>>>>
>>>>> What is the code that generates this:
>>>>>
>>>>> <FONT FACE="Arial, serif">
>>>>>
>>>>> certainly there is no font tag anywhere in web2py. It was deprecated 
>>>>> in HTML years ago.
>>>>>
>>>>
>>>>
>>>> Hi Massimo,
>>>>
>>>> I believe it comes from Microsoft Word.  But the important thing is that
>>>>
>>>> <FONT FACE="Arial, serif">...
>>>>
>>>> is the value for the text field.  And that value also contains UTF-8 
>>>> characters.
>>>>
>>>> David
>>>>
>>>>  
>>>>
>>>>>
>>>>> On Monday, 23 September 2013 09:00:28 UTC-5, David Austin wrote:
>>>>>>
>>>>>>
>>>>>> Hi All,
>>>>>>
>>>>>> I'm seeing a number of error tickets generated in the guts of web2py 
>>>>>> stemming from a form.accepts() call.
>>>>>>
>>>>>>
>>>>>>      File "xxxx/web2py/gluon/html.py", line 856, in _traverse
>>>>>>
>>>>>>     self._postprocessing()
>>>>>>   File "xxxxx/web2py/gluon/html.py", line 1774, in _postprocessing
>>>>>>     _value = str(self['_value'])
>>>>>> UnicodeEncodeError: 'ascii' codec can't encode character u'\u2026' in 
>>>>>> position 55: ordinal not in range(128)
>>>>>>
>>>>>>
>>>>>> The character in question appears to be a UTF-8 ellipsis (...).
>>>>>>
>>>>>> I thought that this may have been a browser issue - but I think now 
>>>>>> it's just a web2py problem with text INPUTs containing
>>>>>> "interesting" characters - even in the values.  The generated HTML 
>>>>>> looks like:
>>>>>>
>>>>>> <input id="word_name" type="text" value="<FONT FACE="Arial, 
>>>>>> serif"><FONT SIZE=2>as/so far as … is/are concerned</font></font>" 
>>>>>> name="name">
>>>>>>
>>>>>> which seems to have two issues - the double quotes in the value are 
>>>>>> not escaped and the ellipsis (probably
>>>>>> ok HTML) is then going to generate the ticket I'm seeing at 
>>>>>> str(self['_value']).
>>>>>>
>>>>>> David
>>>>>>
>>>>>>

-- 
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/groups/opt_out.

Reply via email to