{ "info": { "author": "Atsushi Odagiri", "author_email": "aodagx@gmail.com", "bugtrack_url": null, "classifiers": [ "Framework :: Pyramid", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3" ], "description": ".. contents::\n\n.. image:: https://travis-ci.org/rebeccaframework/rebecca.menu.png?branch=master\n :target: https://travis-ci.org/rebeccaframework/rebecca.menu\n\nIntroduction\n======================\n\n``rebecca.menu`` is component for `pyramid `_, that provides management of menu urls.\n\nInstall\n--------------------\n\nYou can install ``rebecca.menu`` with pip.\n\n::\n\n $ pip install rebecca.menu\n\n\nUsage\n====================\n\n``rebecca.menu`` provides include hook.::\n\n config.include('rebecca.menu')\n\nregister and use Menu\n--------------------------------------------------------\n\nTo add menu, use ``add_route_menu`` directive.::\n\n config.add_route('menu1', '/menus/menu1')\n config.add_route('menu2', '/menus/menu2')\n config.add_route_menu(menu_name=\"system\", route_name=\"menu1\", display_name=\"system menu item1\")\n\nOr use ``route_menu_config`` decorator.::\n\n @route_menu_config('system')\n class SystemMenu3(object):\n route_name=\"menu3\"\n display_name = \"system menu item3\"\n\n\nTo get menu, use ``get_menu`` API::\n\n from rebecca.menu import get_menu\n\n def menu(request):\n system_menu = get_menu(request, system)\n return dict(menu=system_menu)\n\n``get_menu`` returns the object that provides ``rebecca.menu.interfaces.IMenu``.\n``IMenu`` has a property named ``menu_items`` that is list including ``IMenuItem``.\n\n``IMenuItem`` has some property, ``display_name``, ``name`` and ``url``.\nMaybe you use menu items in template such as below::\n\n \n\nPermissions\n-----------------------------------\n\nRegistering menu with permission ::\n\n @route_menu_config('system')\n class SystemMenu3(object):\n route_name=\"menu3\"\n display_name = \"system menu item3\"\n permission = 'menu3-permission'\n\n``get_menu`` check permission of request with ``has_permission``,\ncauses that menu_items includes menu items passed permission check.\n\nMatchdict\n----------------------------------------\n\nIf route has placeholder, the menu url fills values from ``request.matchdict``.\n::\n\n config.add_route(\"menu1\", 'menus/menu1/{testing_vars}')\n menu_factory.add_item(route_name=\"menu1\", display_name=\"testing-menu1\")\n\nWhen matchdict has values for ``testing_vars`` as \"that-is-testing\", menu1's url is \"menus/menu1/that-is-testing\".\n\nContributors\n============\n\n- Atsushi Odagiri, Original Author\n\nChangelog\n==================\n\n0.1 (2013-10-13)\n--------------------\n\n- first release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/rebeccaframework/rebecca.menu", "keywords": "", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "rebecca.menu", "package_url": "https://pypi.org/project/rebecca.menu/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/rebecca.menu/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/rebeccaframework/rebecca.menu" }, "release_url": "https://pypi.org/project/rebecca.menu/0.1/", "requires_dist": null, "requires_python": null, "summary": "UNKNOWN", "version": "0.1" }, "last_serial": 893097, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "c894dd930ea4d84c8dcb10f7a02c56bf", "sha256": "35aa183dc9fd9c50709347b0b27168a923159acf489535fb86e1e71087e90fcd" }, "downloads": -1, "filename": "rebecca.menu-0.1.zip", "has_sig": false, "md5_digest": "c894dd930ea4d84c8dcb10f7a02c56bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9228, "upload_time": "2013-10-13T06:40:21", "url": "https://files.pythonhosted.org/packages/7f/e9/da054194d7a3e2be926a9905541e369fdb05d36f66c17cbf456dc67bfe90/rebecca.menu-0.1.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c894dd930ea4d84c8dcb10f7a02c56bf", "sha256": "35aa183dc9fd9c50709347b0b27168a923159acf489535fb86e1e71087e90fcd" }, "downloads": -1, "filename": "rebecca.menu-0.1.zip", "has_sig": false, "md5_digest": "c894dd930ea4d84c8dcb10f7a02c56bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9228, "upload_time": "2013-10-13T06:40:21", "url": "https://files.pythonhosted.org/packages/7f/e9/da054194d7a3e2be926a9905541e369fdb05d36f66c17cbf456dc67bfe90/rebecca.menu-0.1.zip" } ] }