title: Why and When to use Django mark_safe() function
body: <p>After reading the document, the function of <a href="https://docs.djangoproject.com/en/3.0/ref/utils/#django.utils.safestring.mark_safe" rel="noreferrer">mark_safe()</a> is still unclear. I guess it is related to CSRF stuff. But why and when shall the mark_safe() be used?</p>
  <p>Here is the documentation</p>
  <blockquote>
  <p>mark_safe(s)</p>
  <p>Explicitly mark a string as safe for (HTML)
  output purposes. The returned object can be used everywhere a string
  or unicode object is appropriate.</p>
  <p>Can be called multiple times on a single string.</p>
  <p>For building up fragments of HTML, you should normally be using
  django.utils.html.format_html() instead.</p>
  <p>String marked safe will become unsafe again if modified. For example:</p>
  </blockquote>