Translation of the login page

Hi everyone

On the login page, I want it to be translated into Farsi. I have set the system’s default language to Farsi. I also set lang=‘fa’ in base.html. In the fa.csv file, all the texts have been translated into Farsi, but they are still displayed in English. The same thing happens when logged out. Why???

How can I translate the login page??

image

Go to the website settings and set the “Show Language Picker”

thank you.
I’m encountering the following error. What’s the reason? Is the issue with the dictionary file?

Traceback (most recent call last):
File “apps/frappe/frappe/website/serve.py”, line 18, in get_response
response = renderer_instance.render()
File “apps/frappe/frappe/website/page_renderers/template_page.py”, line 84, in render
html = self.get_html()
File “apps/frappe/frappe/website/utils.py”, line 517, in cache_html_decorator
html = func(*args, **kwargs)
File “apps/frappe/frappe/website/page_renderers/template_page.py”, line 101, in get_html
html = self.render_template()
File “apps/frappe/frappe/website/page_renderers/template_page.py”, line 237, in render_template
html = frappe.render_template(self.source, self.context, safe_render=safe_render)
File “apps/frappe/frappe/utils/jinja.py”, line 85, in render_template
return get_jenv().from_string(template).render(context)
File “env/lib/python3.10/site-packages/jinja2/environment.py”, line 1301, in render
self.environment.handle_exception()
File “env/lib/python3.10/site-packages/jinja2/environment.py”, line 936, in handle_exception
raise rewrite_traceback_stack(source=source)
File “”, line 65, in top-level template code
File “apps/frappe/frappe/templates/web.html”, line 1, in top-level template code
{% extends base_template_path %}
File “apps/frappe/frappe/templates/base.html”, line 70, in top-level template code
{% block content %}
File “apps/frappe/frappe/templates/web.html”, line 72, in block ‘content’
{{ main_content() }}
File “env/lib/python3.10/site-packages/jinja2/sandbox.py”, line 393, in call
return __context.call(__obj, *args, **kwargs)
File “env/lib/python3.10/site-packages/jinja2/runtime.py”, line 777, in _invoke
rv = self._func(*arguments)
File “apps/frappe/frappe/templates/web.html”, line 15, in template
{% block page_container %}
File “apps/frappe/frappe/templates/web.html”, line 30, in block ‘page_container’
{%- block page_content -%}{%- endblock -%}
File “”, line 76, in block ‘page_content’
File “env/lib/python3.10/site-packages/jinja2/sandbox.py”, line 387, in call
return __self.format_string(fmt, args, kwargs, __obj)
File “env/lib/python3.10/site-packages/jinja2/sandbox.py”, line 374, in format_string
rv = formatter.vformat(s, args, kwargs)
File “/usr/lib/python3.10/string.py”, line 165, in vformat
result, _ = self._vformat(format_string, args, kwargs, used_args, 2)
File “/usr/lib/python3.10/string.py”, line 174, in _vformat
for literal_text, field_name, format_spec, conversion in
ValueError: expected ‘}’ before end of string

Not sure about v14, or some language issue, maybe.

It gives the same error in version 15 as well.