{ "info": { "author": "Rich Jones", "author_email": "rich@openwatch.net", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "![Django knockout!](http://i.imgur.com/Nf7Vxq6.gif)\n\ndjango-knockout-modeler [![Build Status](https://travis-ci.org/Miserlou/django-knockout-modeler.svg)](https://travis-ci.org/Miserlou/django-knockout-modeler) [![PyPI](https://img.shields.io/pypi/dm/django-knockout-modeler.svg?style=flat)](https://pypi.python.org/pypi/django-knockout-modeler/)\n==============\n\n**django-knockout-modeler** makes it super easy to use knockout.js with your Django models. It's great for project with objects that have lots of different models, or models with lots of different fields, or both. It can be used in both prototyping complex applications and directly in the templates of simple ones.\n\n**django-knockout-modeler** turns this:\n\n```python\nclass MyObject(models.Model):\n myNumber = models.IntegerField()\n myName = models.CharField()\n\nmyObjects = MyObject.objects.all()\n```\n\ninto this:\n\n```javascript\nvar MyObjectData = [{ \n \"myNumber\": 666,\n \"myName\": \"Gabe Newell\"\n}];\n\nfunction MyObject(data) {\n myNumber = ko.observable(),\n myName = ko.observable()\n}\n\nfunction MyObjectViewModel() { \n var self = this;\n self.myobjects = ko.observableArray(MyObjectData);\n\n self.addMyObject = function(myobject) {\n self.myobjects.push(myobject);\n };\n self.removeMyObject = function(myobject){ \n self.myobjects.remove(myobject) \n };\n self.sortMyObjectsAsc = function(){\n self.myobjects(self.myobjects().sort(function(a, b) {\n return a.myNumber>b.myNumber?-1:a.myNumberb.myNumber?1:0;\n }));\n };\n}\n\nko.applyBindings(new MyObjectViewModel(), $('#myobjects')[0]);\n```\n\nwith just this!\n\n```django\n{{ myObjects|knockout }}\n```\n\nQuick start\n------------\n\n0. Install django-knockout-modeler\n\n ```python\n pip install django-knockout-modeler\n ```\n\n1. Add 'knockout-modeler' to your INSTALLED_APPS setting like this:\n\n ```python\n INSTALLED_APPS = (\n ...\n 'knockout_modeler',\n )\n ```\n\n2. Include Knockout.js in your HTML:\n\n ```html\n \n ```\n\n4. Knockout your QuerySet:\n\n ```html \n {% load knockout %}\n \n ```\n\n5. Template your results:\n\n ```html\n \n ```\n\n6. Loop over your bound data like so:\n\n ```html\n
\n
\n
\n ```\n\nSimple Usage\n---------\n\n**django-knockout-modeler** can be used directly in templates to generate knockout models and knockout-ready data, or either one you choose. To put a QuerySet directly into a django template as a Knockout object, you can do this:\n\n```django\n{{ myObjects | knockout }}\n```\n\nTo get the data object by itself, you can do this: \n\n```django\n{{ myObjects | knockout_data }}\n```\n\nSimilarly, you can get just the model, if you prefer to load your data from apis, like this: \n\n```django\n{{ myObjects | knockout_model }}\n```\n\nAnd even just the bindings:\n\n```django\n{{ myObjects | knockout_bindings }}\n```\n\nProgammatic Usage\n---------\n\nFirst, import it!\n\n```python\nfrom knockout_modeler.ko import ko, ko_data, ko_model, ko_json, ko_data\n```\n\nTo get the whole template, you can do this:\n\n```python\nko_s = ko(your_query_set)\n```\n\nAnd to get just the data string you can do this..\n\n```python\nko_s = ko_data(your_query_set)\n```\n\nor..\n\n```python\nko_s = ko_json(your_query_set)\n```\n\nAnd, surprisingly, you can do the same for the model string:\n\n```python\nko_s = ko_model(YourModel)\n```\n\nCustom fieldsets are also allowed:\n\n```python\nfields = ['custom', 'fieldset', 'allowed']\nko_s= ko(entries, fields)\n```\n\nAccess Control\n----------\n\nIf you don't want to expose your entire model to Knockout, you can define a function in your model:\n\n```python\ndef knockout_fields(self):\n return['name', 'number']\n```\n\nby default, it uses the keys in the object's __to_dict()__ method. For computed properties, you can use python's __property__ function.\n\nSorting\n----------\n\ndjango-knockout provides some convenient methods for sorting your data. By default, it will use the object's 'id' field, but you can also define your own comparator like so:\n\n```python\n@classmethod\ndef comparator(self):\n return 'value'\n```\n\nIf you don't define a comparator, 'id' must be in your knockout_fields.\n\nMulti-Model Support\n----------\n\ndjango-knockout is all ready set up to be used with multiple types of data at the same time, as bindings happen to specific objects:\n\n```javascript\nko.applyBindings(new MyObjectViewModel(), $('#myobjects')[0]);\n```\n\nwhich means that you somewhere in your HTML template, you will need to have an object with that id, like so:\n\n```html\n
\n
\n User is number .\n
\n
\n```\n\nThis is handy for prototyping, but more advanced applications may want to use the [master ViewModel](http://stackoverflow.com/a/9294752/1135467) technique instead.\n\nMulti-Data Support\n----------\n\nIf you're using multiple QuerySets of the same type, you'll need to define a custom name for the data variables.\n\n```django\n{{ myObjects | knockout_data:'MyNamedObjectsData' }}\n```\n\nYou may also pass the string \",safe\" to indicate that data has been sanitized. You must also use the 'safe' template tag:\n\n```django\n{{ myObjects | knockout_data:'MyNamedObjectsData,safe'|safe }}\n```\n\nIssues\n-------\n\nThere's probably a lot more that can be done to improve this. Please file issues if you find them!\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Miserlou/django-knockout-modeler", "keywords": "", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "django-knockout-modeler", "package_url": "https://pypi.org/project/django-knockout-modeler/", "platform": "", "project_url": "https://pypi.org/project/django-knockout-modeler/", "project_urls": { "Homepage": "https://github.com/Miserlou/django-knockout-modeler" }, "release_url": "https://pypi.org/project/django-knockout-modeler/0.11.0/", "requires_dist": [ "coverage (>=4.0.2)", "Django (>=1.11)", "django-fake-model (>=0.1.1)", "Js2Py (>=0.30)", "nose (>=1.3.7)", "simplejson (>=3.8.1)", "wheel (>=0.24.0)" ], "requires_python": "", "summary": "Super easy ModelViews for knockout.js for your Django models", "version": "0.11.0" }, "last_serial": 4268850, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "1331a03e71a2be4a8e0bb845e9e7a8f9", "sha256": "e5cc284af1f618e8efb8aa451f1aafc6f08a0fd04c28602a49a0853e750207f0" }, "downloads": -1, "filename": "django-knockout-modeler-0.1.0.tar.gz", "has_sig": false, "md5_digest": "1331a03e71a2be4a8e0bb845e9e7a8f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2952, "upload_time": "2013-10-17T06:32:10", "url": "https://files.pythonhosted.org/packages/2a/2d/7287dd64bbec0a1cc19b72da17561f02a64443bd7b2546d8b27d30b73117/django-knockout-modeler-0.1.0.tar.gz" } ], "0.10.1": [ { "comment_text": "", "digests": { "md5": "ba87960d815d2a9571c8f273e6c1ba72", "sha256": "17ece933203412166da2d09bd87830be8b421ead7769cb87291bae144ba84c1a" }, "downloads": -1, "filename": "django-knockout-modeler-0.10.1.tar.gz", "has_sig": false, "md5_digest": "ba87960d815d2a9571c8f273e6c1ba72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10689, "upload_time": "2015-11-10T22:33:29", "url": "https://files.pythonhosted.org/packages/c1/a0/e7e3f9a3abc00fb46997764e35cbda23b16b345f377c2abd2d90c05b0d64/django-knockout-modeler-0.10.1.tar.gz" } ], "0.10.2": [ { "comment_text": "", "digests": { "md5": "f525f19d1e70caec1a1d2d4f71b1ad4e", "sha256": "2656eb956e6edafcb7c6513c463bf82f26dbd37a40923d5b19b740680c1d52ab" }, "downloads": -1, "filename": "django-knockout-modeler-0.10.2.tar.gz", "has_sig": false, "md5_digest": "f525f19d1e70caec1a1d2d4f71b1ad4e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10734, "upload_time": "2015-11-10T22:42:29", "url": "https://files.pythonhosted.org/packages/c9/da/7bebc8fbf91c6dea7e0a2674fec86f73e02ed8aad761cdc2c2da5b455ec0/django-knockout-modeler-0.10.2.tar.gz" } ], "0.10.3": [ { "comment_text": "", "digests": { "md5": "b1fcd9b75985247a6b11d541dac2c888", "sha256": "732a2308cd5cf526fdc5c6c723f90b58d9cab9a3f54edd8c3b8be5e1cc49b936" }, "downloads": -1, "filename": "django-knockout-modeler-0.10.3.tar.gz", "has_sig": false, "md5_digest": "b1fcd9b75985247a6b11d541dac2c888", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10835, "upload_time": "2015-11-10T22:46:31", "url": "https://files.pythonhosted.org/packages/11/15/e2de61881039f2320594d313cbadb82c75e84e3d77fcaba94f818a45005b/django-knockout-modeler-0.10.3.tar.gz" } ], "0.10.4": [ { "comment_text": "", "digests": { "md5": "8a73cb5063208559505ff850de16d704", "sha256": "b715392236061b9dde1695bff515d934decad8f55a093c06dd5826010713ea9c" }, "downloads": -1, "filename": "django-knockout-modeler-0.10.4.tar.gz", "has_sig": false, "md5_digest": "8a73cb5063208559505ff850de16d704", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10851, "upload_time": "2015-11-10T23:45:21", "url": "https://files.pythonhosted.org/packages/12/da/9f72fac028f43793ecdb76c3315b4ad72ddab50737c7bef0abee062b0c4e/django-knockout-modeler-0.10.4.tar.gz" } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "0866aa7aebbf0c442ca3808f71ea4711", "sha256": "1e76532fef8b93f9a927cbfb7e31edf594c47a40556a91d5d9a5373d1646158f" }, "downloads": -1, "filename": "django_knockout_modeler-0.11.0-py2-none-any.whl", "has_sig": false, "md5_digest": "0866aa7aebbf0c442ca3808f71ea4711", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12048, "upload_time": "2018-09-13T13:58:17", "url": "https://files.pythonhosted.org/packages/a7/83/afe6dc0db0a76683144522687834705c89c1da3cc1ca16bdca818a2928c2/django_knockout_modeler-0.11.0-py2-none-any.whl" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "93ef48f51afe4fab5b4d67186a1d8db5", "sha256": "365e7508a1a603de486b128d27404ea19061e1d56b6c0f0ea4cf948c8e6e75b4" }, "downloads": -1, "filename": "django-knockout-modeler-0.3.0.tar.gz", "has_sig": false, "md5_digest": "93ef48f51afe4fab5b4d67186a1d8db5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4844, "upload_time": "2013-10-18T04:53:22", "url": "https://files.pythonhosted.org/packages/7b/d7/fa897ce4fa32da1e1dd5eeb69849ac1dbc911d8f8a081b1e115356245345/django-knockout-modeler-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "a6f0b2ebdd2fcb186729511ea4415cce", "sha256": "a8e39d595f4fd697138221344f21d250cc3db353f224ece30db30d758b9bc45a" }, "downloads": -1, "filename": "django-knockout-modeler-0.3.1.tar.gz", "has_sig": false, "md5_digest": "a6f0b2ebdd2fcb186729511ea4415cce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4860, "upload_time": "2013-10-18T04:55:33", "url": "https://files.pythonhosted.org/packages/57/ce/b664415ad877876bc23887b7d57b0e2f9cc125e9a20ad5760fe38b41b08c/django-knockout-modeler-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "ff1af2c9a2e4a820c1b1fd96b7a03f3a", "sha256": "15024d9993b963823a185548ba20d4679c489d8f3a3cd2faacec90d97cd825fd" }, "downloads": -1, "filename": "django-knockout-modeler-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ff1af2c9a2e4a820c1b1fd96b7a03f3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4933, "upload_time": "2013-10-18T23:10:05", "url": "https://files.pythonhosted.org/packages/f0/78/87b7b7d0efc76672b6b6acf944e89566f35bece6c6d331ca33a731484c5d/django-knockout-modeler-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "2bdbd7d8b1d2d2329e6f969c3e27dba7", "sha256": "fe96e606343059d26b9f01405f7f91005e4649f4c1ca8690bd8aa0801b4e6db0" }, "downloads": -1, "filename": "django-knockout-modeler-0.3.3.tar.gz", "has_sig": false, "md5_digest": "2bdbd7d8b1d2d2329e6f969c3e27dba7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4924, "upload_time": "2013-10-18T23:17:56", "url": "https://files.pythonhosted.org/packages/1f/da/5310c007b8ed7b570697637c5874ad75280ed505a10100c62ecf02dfa9e4/django-knockout-modeler-0.3.3.tar.gz" } ], "0.3.9": [ { "comment_text": "", "digests": { "md5": "29710afa17859c654e4d508b13c0e65c", "sha256": "0d4690f46eecfde335944db0d8415c7b87febafd7f99cafd741b2edeb39df691" }, "downloads": -1, "filename": "django-knockout-modeler-0.3.9.tar.gz", "has_sig": false, "md5_digest": "29710afa17859c654e4d508b13c0e65c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5191, "upload_time": "2013-10-21T23:01:07", "url": "https://files.pythonhosted.org/packages/72/12/5933265be415c5a8f05a06af32ddc4981fc3ff291518782fa669ad46ef33/django-knockout-modeler-0.3.9.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "e51c82f5ae49d06ff0e69eaf09d98d5f", "sha256": "e2b898f4f5d4fcfe2071454b25d81e36edc57c752b54d10bd4ad037265e88034" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.0.tar.gz", "has_sig": false, "md5_digest": "e51c82f5ae49d06ff0e69eaf09d98d5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5348, "upload_time": "2013-10-21T23:23:43", "url": "https://files.pythonhosted.org/packages/36/2b/880ae8bf2f7307df8bb1cb0851335655cfe5b901ddd55e53c2e80829c33e/django-knockout-modeler-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "00f2d462bef3837f038ca3c8fa9af29e", "sha256": "598d1fb42d1a66f6565ac953ea49f4c9e8cb38ae192a8a9d385d730fa438c403" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.1.tar.gz", "has_sig": false, "md5_digest": "00f2d462bef3837f038ca3c8fa9af29e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5328, "upload_time": "2013-10-21T23:25:42", "url": "https://files.pythonhosted.org/packages/8b/d7/d7a99ec36dff5e5c4a3571e4077220348826f8673ad1e1319a06a5a0a0a1/django-knockout-modeler-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "2795c9719edf979ff9afbe48b23f4ee5", "sha256": "45a137455b3f6172f432c68a307c3bedce647a6db711fd8d6954aa99ef484a57" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.2.tar.gz", "has_sig": false, "md5_digest": "2795c9719edf979ff9afbe48b23f4ee5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5338, "upload_time": "2013-10-21T23:32:46", "url": "https://files.pythonhosted.org/packages/61/71/a4762e1f2ef18c12974bfd6f71fda3aa4c8b943f0a460a31e61547d8d938/django-knockout-modeler-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "16d7bb8262bcb95ab1b8e281afc32a96", "sha256": "a38c604f989b30dfd54cc9486102f9d4db32377c20a268d2d7993250489d3f73" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.3.tar.gz", "has_sig": false, "md5_digest": "16d7bb8262bcb95ab1b8e281afc32a96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5348, "upload_time": "2013-10-21T23:35:48", "url": "https://files.pythonhosted.org/packages/5c/3d/b0a9d0908f569c9b798a18a13fae689efe08e12f0f8bd9c0b3edd99732d9/django-knockout-modeler-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "8dfb82dd89caddf7f3bb618c745f6b7c", "sha256": "a66287d5360d292a6fa4a38ff57096c852065f901da1f94b37661d2c1e14d7c1" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.4.tar.gz", "has_sig": false, "md5_digest": "8dfb82dd89caddf7f3bb618c745f6b7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5382, "upload_time": "2013-10-22T03:47:27", "url": "https://files.pythonhosted.org/packages/d5/10/7087544d011eea6f4d14ef6e7cce420a8e220420a591d1a636a6fbc7e8ac/django-knockout-modeler-0.4.4.tar.gz" } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "6f2ebdb00ac37c7e6845c1f238750bfc", "sha256": "e9c4fb476b2665986631f7612ce70b47d62d30694e897b52e68069b5946bb257" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.5.tar.gz", "has_sig": false, "md5_digest": "6f2ebdb00ac37c7e6845c1f238750bfc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5408, "upload_time": "2013-10-22T04:12:55", "url": "https://files.pythonhosted.org/packages/e5/0f/c1ec3072ed256e7c1aa9eed456a998790efad9b3e1f5bbeabf59259346f7/django-knockout-modeler-0.4.5.tar.gz" } ], "0.4.6": [ { "comment_text": "", "digests": { "md5": "feaffb96b4fff1b7beca3dbfe7540814", "sha256": "5538bbc2cc80321eeb8c8ca98ea8f1cee7f0ef1b47cccb4491673d39c8f19f0a" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.6.tar.gz", "has_sig": false, "md5_digest": "feaffb96b4fff1b7beca3dbfe7540814", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5408, "upload_time": "2013-10-22T04:14:29", "url": "https://files.pythonhosted.org/packages/4b/b4/d1e8070f540310c552daf22af112711eb0fbb7fe76bec9d21905a9b70a3c/django-knockout-modeler-0.4.6.tar.gz" } ], "0.4.7": [ { "comment_text": "", "digests": { "md5": "d4e779ab0c8fce2a5259469b7c17d9cd", "sha256": "6eefe6b02689b45afe828e4890ce0ca646b7380b8d74cd00fcaf2d3df910e0e1" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.7.tar.gz", "has_sig": false, "md5_digest": "d4e779ab0c8fce2a5259469b7c17d9cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5425, "upload_time": "2013-10-22T04:16:52", "url": "https://files.pythonhosted.org/packages/41/09/927b9e12e6dd1b1a4078bf883ef52384673ea8a2f4b8f9e71523b80dc845/django-knockout-modeler-0.4.7.tar.gz" } ], "0.4.8": [ { "comment_text": "", "digests": { "md5": "4b375cdccab6b60a0d6c3f53dce13386", "sha256": "e8929624927ac85dd694ee726a1b522dbff2de6af9a43d7f25626a26177ec56f" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.8.tar.gz", "has_sig": false, "md5_digest": "4b375cdccab6b60a0d6c3f53dce13386", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5416, "upload_time": "2013-10-22T04:20:17", "url": "https://files.pythonhosted.org/packages/17/f5/ae46fb64f83e2da6d5798871580a501ad29ad3e0d802eddc3c75dfc50c25/django-knockout-modeler-0.4.8.tar.gz" } ], "0.4.9": [ { "comment_text": "", "digests": { "md5": "9b544b2591ff0d3be9816b060e777209", "sha256": "d05fd21f6e41be368a98498e30d10e939b2b34603b3a60e61f793636898fa1ee" }, "downloads": -1, "filename": "django-knockout-modeler-0.4.9.tar.gz", "has_sig": false, "md5_digest": "9b544b2591ff0d3be9816b060e777209", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5412, "upload_time": "2013-10-22T04:21:01", "url": "https://files.pythonhosted.org/packages/88/c4/cb30e1ac071095beb25223857f9cca7ced7a3805e78d84789f1fa63ef580/django-knockout-modeler-0.4.9.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "d155417afdb5903e31a64c531e8d4950", "sha256": "9c0d79f759427677a54e7ba06b9c18d1dd6cfd943325f52c5a13f40ccc00793e" }, "downloads": -1, "filename": "django-knockout-modeler-0.5.0.tar.gz", "has_sig": false, "md5_digest": "d155417afdb5903e31a64c531e8d4950", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5775, "upload_time": "2013-10-22T22:56:45", "url": "https://files.pythonhosted.org/packages/ca/9a/3b1207b228ee506c4ee19ee0d599d4478c844c015c92767314b1c2428a89/django-knockout-modeler-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "12ccac802b9d7416980a8d5f13641c63", "sha256": "6d8ca14930e89192e6a2244ccddbf78116cb4605325b1d131905b5be355a375b" }, "downloads": -1, "filename": "django-knockout-modeler-0.5.1.tar.gz", "has_sig": false, "md5_digest": "12ccac802b9d7416980a8d5f13641c63", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6120, "upload_time": "2013-11-01T19:47:52", "url": "https://files.pythonhosted.org/packages/4e/3c/76dfc530953607b014e9d02c9647a28854990fa4afdd212dc0dc08ef965f/django-knockout-modeler-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "7570dc6123b7f6310b7f0b36466e6e30", "sha256": "f589942ef36a7b9883bd9c9a4b60889596d00a3a6c950617e0d3ba44801690f9" }, "downloads": -1, "filename": "django-knockout-modeler-0.5.2.tar.gz", "has_sig": false, "md5_digest": "7570dc6123b7f6310b7f0b36466e6e30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6160, "upload_time": "2013-11-05T22:53:00", "url": "https://files.pythonhosted.org/packages/ce/5d/6b05d1ee9ec0ffe60e5c452c37bdde5fb1f7eb79ce583fa8ff260d4035c0/django-knockout-modeler-0.5.2.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "f5a5767dc39889af2b655e989c123b2f", "sha256": "fccab84c1f9b0c5dbb79d84c59de0003d1edb1038529e290626bc4d24a8ed550" }, "downloads": -1, "filename": "django-knockout-modeler-0.6.0.tar.gz", "has_sig": false, "md5_digest": "f5a5767dc39889af2b655e989c123b2f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6270, "upload_time": "2013-11-21T20:31:13", "url": "https://files.pythonhosted.org/packages/c4/96/3d83667e053ecef96ac90973a00fb5c4c82e57c96317580bf2bdb2bb18c9/django-knockout-modeler-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "cdf6eed06afcb73651700539e3872a07", "sha256": "7a1bbf787b2d56bb90b1acaef94d23896815a83b0db5b79a71ca63dc98088b0e" }, "downloads": -1, "filename": "django-knockout-modeler-0.6.1.tar.gz", "has_sig": false, "md5_digest": "cdf6eed06afcb73651700539e3872a07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6320, "upload_time": "2013-12-02T01:19:12", "url": "https://files.pythonhosted.org/packages/1e/34/10ca3eb26ab85c73de5bd1c44a11f44455ce26697203656824a582a0e93c/django-knockout-modeler-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "fa98004141a45cc52da77f639ea8e4b1", "sha256": "e96ae5a3d6044300c3d4bedd76d1e1d162fc45528d7c4416069b67fd0ffdf261" }, "downloads": -1, "filename": "django-knockout-modeler-0.6.2.tar.gz", "has_sig": false, "md5_digest": "fa98004141a45cc52da77f639ea8e4b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6367, "upload_time": "2013-12-22T20:42:27", "url": "https://files.pythonhosted.org/packages/5b/62/960439170cb7fa38fa5d2652fd7940d8bc1dc1bba1f5f6eac69791b65260/django-knockout-modeler-0.6.2.tar.gz" } ], "0.6.3": [ { "comment_text": "", "digests": { "md5": "095abdc79abef0d1cda25e3ea840bf66", "sha256": "8640ebfea64e112e1a2d385dfbc1d36c0ce1ca2e665751199f5baf6b9c4b716b" }, "downloads": -1, "filename": "django-knockout-modeler-0.6.3.tar.gz", "has_sig": false, "md5_digest": "095abdc79abef0d1cda25e3ea840bf66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6567, "upload_time": "2014-02-26T03:33:43", "url": "https://files.pythonhosted.org/packages/dc/4e/ca9dbcdd080d1f1fe402c1e30cf8825b33790a86cffaf8981f5af03a8666/django-knockout-modeler-0.6.3.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "3f5f2fcf77f12484020ccae2532a9816", "sha256": "3607c85c00fc669512f449fcfd16ab9a0a3d14018f4ed4a178e977376c73a30d" }, "downloads": -1, "filename": "django-knockout-modeler-0.7.0.tar.gz", "has_sig": false, "md5_digest": "3f5f2fcf77f12484020ccae2532a9816", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6725, "upload_time": "2015-11-05T01:41:07", "url": "https://files.pythonhosted.org/packages/4a/ae/630e2b6799e3764f8579c330f8d2fba8f3c3914665e56897b421fdbd3abd/django-knockout-modeler-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "6a467334e5a257ee0c1f95dada6bd88b", "sha256": "9b5e90677eeb81253c3ff64bc92440cbeed0198b4570a0d284976791efe9cb46" }, "downloads": -1, "filename": "django-knockout-modeler-0.7.1.tar.gz", "has_sig": false, "md5_digest": "6a467334e5a257ee0c1f95dada6bd88b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6731, "upload_time": "2015-11-05T01:53:00", "url": "https://files.pythonhosted.org/packages/ea/04/3d88ff770ba96de646c8a7365f3d92e552bcf40b1be033f35447e0cfbb6b/django-knockout-modeler-0.7.1.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "4a79f818e623c50f045af0a5d8ed1114", "sha256": "985c822f6c7c2b2ab788f34fb202cefb30b788f7585e8c44924612e0c5737526" }, "downloads": -1, "filename": "django-knockout-modeler-0.8.1.tar.gz", "has_sig": false, "md5_digest": "4a79f818e623c50f045af0a5d8ed1114", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7541, "upload_time": "2015-11-05T06:38:54", "url": "https://files.pythonhosted.org/packages/df/03/21261237fc5f7efbda963730c242092e9d5230b81d89229d6ef4f7fc01e1/django-knockout-modeler-0.8.1.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "52c3f5a5112c904d556e535e6d9660cf", "sha256": "43832f49b3c9dcc6406e26849038f2c41cd22a21d32cc632c4dd161f9d7c0191" }, "downloads": -1, "filename": "django-knockout-modeler-0.9.0.tar.gz", "has_sig": false, "md5_digest": "52c3f5a5112c904d556e535e6d9660cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10343, "upload_time": "2015-11-10T04:18:05", "url": "https://files.pythonhosted.org/packages/77/35/3ece47782c866936265298b6e0f5a849660f34198a623b3a863b22cd6f8a/django-knockout-modeler-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0866aa7aebbf0c442ca3808f71ea4711", "sha256": "1e76532fef8b93f9a927cbfb7e31edf594c47a40556a91d5d9a5373d1646158f" }, "downloads": -1, "filename": "django_knockout_modeler-0.11.0-py2-none-any.whl", "has_sig": false, "md5_digest": "0866aa7aebbf0c442ca3808f71ea4711", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12048, "upload_time": "2018-09-13T13:58:17", "url": "https://files.pythonhosted.org/packages/a7/83/afe6dc0db0a76683144522687834705c89c1da3cc1ca16bdca818a2928c2/django_knockout_modeler-0.11.0-py2-none-any.whl" } ] }