Comments (7)
He is not exporting PloneFormGen items. His problem is that there is a page which has a relation to a broken PloneFormGen object. Our relation export code trips over this.
@Rudd-O Your inline diff seems okay at first glance. Can you make this into a pull request?
Alternative: install collective.relationhelpers
and use it to inspect and/or rebuild all relations.
from collective.exportimport.
Ah, forgot the traceback:
ERROR:collective.exportimport.export_other:Cannot export relation <z3c.relationfield.relation.RelationValue object at 0x7ca3245ad740 oid 0x15a56a in <Connection at 7ca3288bf070>>, skipping
Traceback (most recent call last):
File "/home/user/optplone/buildout-cache/eggs/plone.app.relationfield-2.0.3-py3.8.egg/plone/app/relationfield/path.py", line 15, in path
return '/'.join(obj.getPhysicalPath())
AttributeError: 'FormFolder' object has no attribute 'getPhysicalPath'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/user/optplone/deployments/master/src/collective.exportimport/src/collective/exportimport/export_other.py", line 121, in get_all_references
rel_from_path_and_rel_to_path = rel.from_path and rel.to_path
File "/home/user/optplone/buildout-cache/eggs/z3c.relationfield-0.9.0-py3.8.egg/z3c/relationfield/relation.py", line 55, in to_path
return _path(self.to_object)
File "/home/user/optplone/buildout-cache/eggs/z3c.relationfield-0.9.0-py3.8.egg/z3c/relationfield/relation.py", line 138, in _path
return object_path.path(obj)
File "/home/user/optplone/buildout-cache/eggs/plone.app.relationfield-2.0.3-py3.8.egg/plone/app/relationfield/path.py", line 17, in path
raise ValueError(obj)
ValueError: <persistent broken Products.PloneFormGen.content.form.FormFolder instance b'\x00\x00\x00\x00\x00\x15\xa5D'>
Obviously my site does not have PFG and cannot be installed even if I wanted to.
from collective.exportimport.
You cannot export broken objects, you should exclude them in the export.
from collective.exportimport.
I don't even know how to find the broken object much less reference it in the exclusion list :-(
from collective.exportimport.
Since your issue is that you uninstalled PloneFormGen
but still have items you could either delete theme, choose not export them or reinstall PloneFormGen. A exported FormFolder
will not help you anyway in Plone 5. MIgrating to easyform is done within collective.easyform (works in Plone 4 or 5). It may be easier to recreate the forms by hand unless you have a lot of them.
If you have more broken content you can try that in you global_obj_hook
:
from ZODB.broken import PersistentBroken
if isinstance(obj, PersistentBroken):
return
from collective.exportimport.
Yes please Maurits, I don't even care about the credit :-) just trying to ensure this project kicks ass.
from collective.exportimport.
Relation helpers is already proving useful, and I am working around the FormFolder broken object by using one of my workarounds.
from collective.exportimport.
Related Issues (20)
- Discussion importer should not check for discussion support being enabled on a particular content object HOT 4
- why is the UID set after the custom_contenttype hook? HOT 2
- Can't export content with versions in Plone 5.0 HOT 1
- Robustness in content_export for CMFEditions versions, lock_info
- fix_html_in_portlets should also support additional fixers
- Timezone dropped from non-naive datetimes during conversion
- Better Reporting of Failed Exported Objects
- relative path not used when exporting p.a.redirector rules HOT 1
- Usage of json.dumps before deserialization @import HOT 2
- Editing revision author is not preserved on import HOT 1
- ```Import of plone.app.contenttypes.migration.topics import CONVERTERS not working with V 1.9 HOT 1
- Import of plone.app.contenttypes.migration.topics import CONVERTERS not working with V 1.9 HOT 2
- KeyError: 'time' for history_item HOT 1
- Migration between Volto sites HOT 4
- LDAP principals not added to existing groups
- Error during export from Plone 4.3 HOT 2
- KeyError: '@id' while importing redirects/ordering with collective.exportimport 1.10 HOT 1
- Readme does not render due a issue in github HOT 7
- [ClassicUI] Error exporting collections because include_items is always True (deserialization error)
- migration is always true HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from collective.exportimport.