Saleor update emails

Problem:

You are using the development stack that Saleor provides, need to update email templates and add texts to be translated.


Following what you can find online or what your colleague has written into the README doesn´t work for you?

Solution:

Be careful about the environment in which you execute the commands.
python manage.py makemigrations works very well inside the docker container where web or celery is running.

python manage.py makemessages -e html,py,email,txt and python manage.py compilemessages on the other hand don´t like it

You need to run those two commands on your local machine. Running them inside Docker results in no changes, but running locally will update the .po and .mo files respectively.

Explanation

Again as in Python Tempfile creation I haven´t dug deep enough to understand the reason why you need to run the message commands on your local machine.

My theory is, that Django has an issue with the files on the local machine mounted as folder volume into the Container and using a cache to do so.

This is actually not the first issue of this kind, which makes me think this way. We used their development set up some time on production and needed to prune everything and create containers from scratch when we made changes to emails.

Let me know when it helped you.

Best,
Frank

Sources:

https://docs.saleor.io/docs/developer/running-saleor/emails/

Leave a Reply