{ "info": { "author": "Jens Klein, Johannes Raggam", "author_email": "dev@bluedynamics.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Zope2", "License :: OSI Approved :: GNU General Public License (GPL)", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "=========================\narchetypes.fieldtraverser\n=========================\n\nOverview\n========\n\nThe `archetypes.fieldtraverser` is used to traverse to an Archetypes field and\naccess its storage.\n\nIt patches `Products.Archetypes` so that it uses the fieldtraverser for access to\nfields.\n\n\nUse Cases\n=========\n\n- Access to images, files or other binary data via AnnotationStorage instead of traditional AttributeStorage. archetypes.fieldtraverser eliminates the need to hack `__bobo_traverse__` for this. Advantage: When accessing objects with binary data stored in an AttributeStorage, much binary data chunks are loaded regardless if they are used. When doing this quite often the ZODB is unnecessarily stressed.\n\n\n- You can use archetypes.fieldtraverser for simple Web Services which return just the content of Archetypes fields without the HTML rendered by widgets.\n\n\n- Impress your friends by easily accessing field-contents via URLs.\n\n\nUsage\n=====\n\nIn an URL this traverser can be used to access a fields data by use of\nthe fieldname and the storage variant if needed (such as image sizes):\n\n`obj/++atfield++FIELDNAME`\n\nor\n\n`obj/++atfield++FIELDNAME-STORAGENAME`\n\n\nExample\n=======\n\nTo access an original image from a field named 'photo':\n\n`obj/++atfield++photo`\n\n\nTo access its thumbnail with size named 'thumb':\n\n`obj/++atfield++photo-thumb`\n\n\nDependencies\n============\n\n`Products.Archetypes`\n\n\nInstallation\n============\n\nInstall like any other Plone egg and import the GenericSetup profiles\nin ZMI, portal_setup.\n\n\nKnown Issues\n============\n\nThe ImageWidget, FileWidget and RichWidget are patched to use the\n`++atfield++FIELDNAME` notation for accessing binary contents. This patch is done\nvia updating the fields' `_properties` which is then copied in the concrete\nschematas.\nBut our default patch mechanism does not affect ATContentTypes (and possibly\nother ConentTypes too) because they are loaded by Zope BEFORE the patches are\napplied. This happens also for eggified products in Plone3.2 because\n`Products.ATContentTypes` is being recognised as a Product by Zope/Five because\nof the \"Products\" namespace. Therefore `Products.ATContentTypes` is loaded BEFORE\nany eggs are loaded.\nSo we have to patch the concrete ATContentTypes too. See `patch.py` for more\ninformation.\n\nPlease note that RichWidget has the ability to upload and download files, and\ntherefore we also provide custom fieldtraverser aware widgets. BUT the\nupload/download feature is deactivated by default in the RichWidget templates\nand settings. The RichWidget patching is done just for completeness.\n\nSo, if you include your own Products or eggs in the \"Products\" namespace you'll\nalso have to patch your content types to use our fieldtraverser aware widgets.\nWith this in mind using this product should not be a problem. \n\n\nFor your pleasure\n=================\n\nAn \"Easter egg\" can be found when opening \"++resource++plone.jpg\" in your Plone\nsite. For more information read archetypes/fieldtraverser/tests/plone.jpg.CREDITS\n\n\nCopyright\n=========\n\nCopyright (c) 2008: BlueDynamics Alliance, Austria\n\nAlan Farmer (c) 1997 from Bearos Records for plone.jpg\n\n\nCredits\n=======\n\n- Jens Klein \n\n- Johannes Raggam \n\n- Robert Niederreiter ", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://svn.plone.org/svn/archetypes/archetypes.fieldtraverser", "keywords": "archetypes fieldtraverser", "license": "GPL", "maintainer": null, "maintainer_email": null, "name": "archetypes.fieldtraverser", "package_url": "https://pypi.org/project/archetypes.fieldtraverser/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/archetypes.fieldtraverser/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://svn.plone.org/svn/archetypes/archetypes.fieldtraverser" }, "release_url": "https://pypi.org/project/archetypes.fieldtraverser/0.4.4/", "requires_dist": null, "requires_python": null, "summary": "Archetypes fieldtraverser", "version": "0.4.4" }, "last_serial": 786381, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "f6c7fe2f19033cb90a590750c6027209", "sha256": "b1203c8063efc1933ca8b2773d2648227ec2aa08336c2d893d705bfa57855f9e" }, "downloads": -1, "filename": "archetypes.fieldtraverser-0.2.tar.gz", "has_sig": false, "md5_digest": "f6c7fe2f19033cb90a590750c6027209", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5573, "upload_time": "2008-09-25T11:22:31", "url": "https://files.pythonhosted.org/packages/f6/ff/a7f2b707043f03d3cadf3ceabe5b600801c7cb8a248ce09e1aa8a40e0a70/archetypes.fieldtraverser-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "aa1ce88e3bda62a69c4f385e08b280e9", "sha256": "087d271d13edc3b274d0b63157f48f37c7a1d00eb95924f0ba9cd7295a286732" }, "downloads": -1, "filename": "archetypes.fieldtraverser-0.2.1.tar.gz", "has_sig": false, "md5_digest": "aa1ce88e3bda62a69c4f385e08b280e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5581, "upload_time": "2008-09-25T11:44:05", "url": "https://files.pythonhosted.org/packages/0e/5e/4ad7fb2b37952157b0489f12d0fb2a765cca91a47a3b9caefe268c777452/archetypes.fieldtraverser-0.2.1.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "84ca777961d505841eb9544600799843", "sha256": "7be7baa85116f93d36705c7a79080e2daf7fd8814ac6c5acb68b88ad9e0fc553" }, "downloads": -1, "filename": "archetypes.fieldtraverser-0.4.4.tar.gz", "has_sig": false, "md5_digest": "84ca777961d505841eb9544600799843", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37235, "upload_time": "2008-12-09T16:59:58", "url": "https://files.pythonhosted.org/packages/86/ab/35796a75108fbc0e2a40e362b267d62aea664569f20d7cd038509155a07e/archetypes.fieldtraverser-0.4.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "84ca777961d505841eb9544600799843", "sha256": "7be7baa85116f93d36705c7a79080e2daf7fd8814ac6c5acb68b88ad9e0fc553" }, "downloads": -1, "filename": "archetypes.fieldtraverser-0.4.4.tar.gz", "has_sig": false, "md5_digest": "84ca777961d505841eb9544600799843", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37235, "upload_time": "2008-12-09T16:59:58", "url": "https://files.pythonhosted.org/packages/86/ab/35796a75108fbc0e2a40e362b267d62aea664569f20d7cd038509155a07e/archetypes.fieldtraverser-0.4.4.tar.gz" } ] }