I have a model in which I accept string data in the char field. this is populated through Django admin field.
Models.py
class Test(models.Model):
overview = models.CharField(max_length=10000, null=True, blank=False)
views.py
from .models import Test
def testView(request):
data = Test.objects.all()
return render(request, 'abc.html', {'data': data})
my template which has html
<p style="text-align: center; color: black">{{data.overview | linebreaks}}</p>
this mock response of data:
"with the great power comes the great responsibility.
<a href="https://www.google.co.in/">connect</a>" from backend.
how to show this as a link inside the paragraph in the front end.
the link might be present anywhere positioned in the paragraph as entered by the text in django-admin
currently the whole anchor tag is displayed instead of link
CodePudding user response:
Your question is not clear enough.
However. For links, you can use URLField
instead of CharField
.
To converts URLs and email addresses in text.
If you are not sure where the link might be in the text, you should use RegEx:
url_re = re.compile(r'^www.[a-zA-z$#./?=:; &@{}|,%<>~0-9]*', re.IGNORECASE)
words = word_split_re.split(str(text))
for i, word in enumerate(words):
if '.' in word or '@' in word or ':' in word:
lead, middle, trail = '', word, ''
lead, middle, trail = trim_punctuation(lead, middle, trail
if url_re.match(middle):
url = smart_urlquote('http://%s' % html.unescape(middle))
klass = "js-css-class"