Encounter an error when using djangocms publishing page changes.
when I ran tail -f /var/log/apache2/error.log
, it returned:
treebeard.exceptions.NodeAlreadySaved: Attempted to add a tree node that is already in the database, referer: http://47.95.254.172/?edit
And when I allowed the settings.py DEBUG= True and click the 'Publish page changes' button:
NodeAlreadySaved at /admin/cms/page/1/en/publish/
Attempted to add a tree node that is already in the database
Request Method: POST
Request URL: http://47.95.254.172/admin/cms/page/1/en/publish/
Django Version: 3.1.7
Exception Type: NodeAlreadySaved
Exception Value: Attempted to add a tree node that is already in the database
Exception Location: /root/env1/lib/python3.8/site-packages/treebeard/mp_tree.py, line 326, in process
Python Executable: /root/env1//bin/python
Python Version: 3.8.5
I have run python manage.py cms fix-tree
but it did not work. While python manage.py cms check
returned 10 checks successful!.
I deployed the djangocms project with:
apache2.4.41
mod-wsgi 4.8.0
django 3.1.7
django-cms 3.8.0
The python version in venv is 3.8.5, and mod-wsgi was compiled by python3.8.5 in the venv.
Thank you for the help!
Downgrade to django-treebeard version below 4.5.1, e.g. 4.4. Version 4.5.1 seems to be incompatible.
pip install django-treebeard==4.4
You can also modify the requirements.txt
file to reflect a different django-treebeard
version that is not 4.5.1
:
django-treebeard>=4.0,!=4.5.1
Then you can run:
pip install -r requirements.txt
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With