Sorry. Now I understand better what you are trying to do. Your invalid
character must be in mailing/pass_reset.html. Can you show us that file?
On Monday, 7 October 2013 04:17:53 UTC-5, lesssugar wrote:
>
> Your problem does not come from the code you show us
>
>
> When I comment this piece of code *(A)*:
> auth.messages.reset_password = response.render(
> 'mailing/pass_reset.html',
> dict(subject='Password reset',
> link = 'http://'+request.env.http_host+URL('default', 'user',
> args=['reset_password'])+'/%(key)s'))
>
> - password reset works with no errors.
>
> The code you are showing is wrong because your link contains "%(key)s"
>> which is unresolved
>
>
> What do you mean? This code is directly copied from the book. E.g. when I
> do this *(B)*, the reset works as well:
>
> auth.messages.reset_password = 'Click on link http://'+
> request.env.http_host + URL('default', 'user', args=['reset_password']) +
> '/%(key)s to reset your password'
>
> When I go with the earlier code *(A)*, it fails.
>
> Anyway, I'll keep digging. Thanks for help and suggestions.
>
>
>
>
> On Monday, October 7, 2013 4:36:22 AM UTC+2, Massimo Di Pierro wrote:
>>
>> I cannot help you without looking at the entire code. Your problem does
>> not come from the code you show us.
>>
>> The code you are showing is wrong because your link contains "%(key)s"
>> which is unresolved but this is not the cause of the (0x22) problem.
>>
>>
>> On Sunday, 6 October 2013 11:53:27 UTC-5, lesssugar wrote:
>>>
>>> Massimo (or anyone willing to help),
>>>
>>> all I'm trying to achieve is use my own email template to send a
>>> password-reset message to user. How do I do this properly?
>>>
>>> Currently, I have this
>>>
>>> *db.py*
>>> auth.messages.reset_password = response.render(
>>> 'mailing/pass_reset.html',
>>> dict(subject='Password reset',
>>> link = 'http://'+request.env.http_host+URL('default', 'user',
>>> args=['reset_password'])+'/%(key)s'))
>>>
>>> *pass_reset.html*
>>> ...
>>> <tr>
>>> <td style="padding: 20px 0 30px 0; color: #333333; font-family:
>>> Arial, sans-serif; font-size: 14px; line-height: 22px;">
>>> *{{=link}}*
>>> </td>
>>> </tr>
>>> ...
>>>
>>> I constantly get "unsupported format character" error. The character
>>> (0x22) is ASCII quotation mark: *"*. I don't see it in my code. It's
>>> getting a little bit frustrating as I'm not sure where to look for the bug.
>>>
>>> On Thursday, October 3, 2013 1:22:50 AM UTC+2, Massimo Di Pierro wrote:
>>>>
>>>> What is this supposed to do?
>>>>
>>>> {{=XML('%(key)s')}}
>>>>
>>>> Are you sure you are not looking for:
>>>>
>>>> <a href="{{=URL('default','user', args=('reset_password',key),
>>>> scheme=True, host=True)}}"> Go to password reset</a>
>>>>
>>>> Is key a variable?
>>>> Anyway, I am not sure your problem comes from this code.
>>>>
>>>> On Wednesday, 2 October 2013 08:14:17 UTC-5, lesssugar wrote:
>>>>>
>>>>> Sorry, Massimo, but I really don't get it. Is the slash causing the
>>>>> problem? I use '[controller_name]/[view_name.html]' to render other
>>>>> emails
>>>>> and it's all ok.
>>>>>
>>>>> I even tried to do it this way in the mailing view:
>>>>>
>>>>> <a href="{{=URL('default','user', args='reset_password', scheme=True,
>>>>> host=True)}}/{{=XML('%(key)s')}}"> Go to password reset</a>
>>>>>
>>>>> - and nothing, still the same error. I would be grateful for another
>>>>> hint, if there is one.
>>>>>
>>>>>
>>>>> On Tuesday, October 1, 2013 10:31:23 PM UTC+2, Massimo Di Pierro wrote:
>>>>>>
>>>>>> You probably have same strange character in 'mailing/pass_reset.html'
>>>>>>
>>>>>> On Tuesday, 1 October 2013 13:26:46 UTC-5, lesssugar wrote:
>>>>>>>
>>>>>>> I'm trying to send a custom email template to user when they perform
>>>>>>> password reset:
>>>>>>>
>>>>>>> *db.py:*
>>>>>>>
>>>>>>> auth.messages.reset_password = response.render(
>>>>>>> 'mailing/pass_reset.html',
>>>>>>> dict(subject="Password reset",
>>>>>>> link=URL('default','user', args='reset_password')))
>>>>>>>
>>>>>>> and in *mailing/pass_reset.html*:
>>>>>>>
>>>>>>> ...
>>>>>>> <a href="{{=URL('default','user', args=['reset_password'],
>>>>>>> scheme=True, host=True) + '/%(key)s'}}"> Go to password reset</a>
>>>>>>> ...
>>>>>>>
>>>>>>> and everytime I'm testing, I get this:
>>>>>>>
>>>>>>> File "/home/username/www/web2py/gluon/tools.py", line 2739, in
>>>>>>> email_reset_password
>>>>>>> dict(key=reset_password_key, link=link)):
>>>>>>> ValueError: unsupported format character '"' (0x22) at index 411
>>>>>>>
>>>>>>>
>>>>>>> Any ideas what might be wrong?
>>>>>>>
>>>>>>>
--
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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.