Surya Kasturi
Surya Kasturi

Reputation: 4743

String unable to format with html chars in it

I have a code something like below

 """<div id="spc-preview-edit-submit" class="spc-form">
    <form action="{% url new-submission itemtype='%s' %}" 
    ...
    ...
    </div></form></div>""" % value

I am getting %u format: a number is required, not unicode error.

I tried using format() with double braces but, its even raising errors..

Can anyone tell a simple and elegant solution

Upvotes: 0

Views: 64

Answers (1)

Ashwini Chaudhary
Ashwini Chaudhary

Reputation: 250991

Escape the additional '%'s:

"""<div id="spc-preview-edit-submit" class="spc-form">
    <form action="{%% url new-submission itemtype='%s' %%}" 
    ...
    ...
    </div></form></div>""" % value

using str.format(), format requires you to escape additional { using {{:

 """<div id="spc-preview-edit-submit" class="spc-form">
    <form action="{{% url new-submission itemtype='{}' %}}" 
    ...
    ...
    </div></form></div>""".format(value)

Upvotes: 3

Related Questions