Edit ERPNext source code

Hello,

This is my first time using ERPNext, I am new to phyton frappe framework as well.
I want to customize ERPNext.
I try to edit the source code, but I got an error message.

e.g.
I try to edit frappe-bench\apps\erpnext\erpnext\templates\pages\home.html
and then I remove the html comment
<!-- thumbnail not updated, and used as background image in item card -->

I got an error :

Uncaught Server Exception

Traceback (most recent call last):
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/render.py”, line 45, in render
data = render_page_by_language(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/render.py”, line 142, in render_page_by_language
return render_page(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/render.py”, line 158, in render_page
return build(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/render.py”, line 165, in build
return build_page(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/render.py”, line 178, in build_page
context = get_context(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/context.py”, line 15, in get_context
context = get_page_context(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/router.py”, line 36, in get_page_context
page_context = make_page_context(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/router.py”, line 44, in make_page_context
context = resolve_route(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/router.py”, line 19, in resolve_route
context = get_page_info_from_template(path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/router.py”, line 71, in get_page_info_from_template
return get_page_info(option, app, start, app_path=app_path)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/router.py”, line 217, in get_page_info
setup_source(page_info)
File “/home/xxx/frappe-bench/apps/frappe/frappe/website/router.py”, line 230, in setup_source
source = jenv.loader.get_source(jenv, page_info.template)[0]
File “/home/xxx/frappe-bench/env/lib/python3.6/site-packages/jinja2/loaders.py”, line 396, in get_source
return loader.get_source(environment, template)
File “/home/xxx/frappe-bench/env/lib/python3.6/site-packages/jinja2/loaders.py”, line 247, in get_source
source = self.provider.get_resource_string(self.manager, p)
File “/home/xxx/frappe-bench/env/lib/python3.6/site-packages/pkg_resources/init.py”, line 1401, in get_resource_string
return self._get(self._fn(self.module_path, resource_name))
File “/home/xxx/frappe-bench/env/lib/python3.6/site-packages/pkg_resources/init.py”, line 1616, in _get
with open(path, ‘rb’) as stream:
PermissionError: [Errno 13] Permission denied: ‘/home/xxx/frappe-bench/apps/erpnext/erpnext/./templates/pages/home.html’

and then I try to returns to the original source code, and I still got this error.

what do i need to do after editing the source ?

You probably edited home.html using sudo, so permissions got changed for the file,

chown xxx /home/xxx/frappe-bench/apps/erpnext/erpnext/./templates/pages/home.html

thank you for your help.

1 Like