{ "info": { "author": "danigosa", "author_email": "danigosa@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Software Development :: Libraries", "Topic :: Utilities" ], "description": "=============================\nSimple Seo Backend for Django\n=============================\n\n.. image:: https://drone.io/github.com/danigosa/django-simple-seo/status.png\n :target: https://drone.io/github.com/danigosa/django-simple-seo/latest\n\n.. image:: https://drone.io/github.com/danigosa/django-simple-seo/files/tests_html/coverage_status.png\n :target: https://drone.io/github.com/danigosa/django-simple-seo/files/tests_html/index.html\n\n.. image:: https://img.shields.io/pypi/v/django-simple-seo.svg?style=flat\n :target: https://pypi.python.org/pypi/django-simple-seo\n\n.. image:: https://img.shields.io/pypi/dm/django-simple-seo.svg?style=flat\n :target: https://pypi.python.org/pypi/django-simple-seo\n\nSimple seo backend for Django. Inspired by django-seo ( https://github.com/willhardy/django-seo ) but found it quite\ncomplex for the simple functionality it was intended for.\n\ndjango-simple-seo aims to attach a model to your views with just 4 simple lines of code and everything configured by the admin.\n\nWARNING\n*******\n\nThis docs refers to version 1.0 or newer. For older versions (<=0.4.1) refer to:\n\n * https://github.com/danigosa/django-simple-seo/blob/master/README-OLD.rst\n\n\nWhat's in django-simple-seo\n***************************\n\n * Python 2.7, 3.2, 3.3, 3.4 and Django 1.4, 1.5 and 1.6\n * View Autodiscovering\n * Registry of models and views in settings\n * Pure Django Models and Django Fields implementation, no metaclasses in action\n * Don't reinvent the wheel: as long as they are django models you can use the goodies out there\n * i18n with django-vinaigrette, django-linguo, django-modeltranslation, etc.\n * Cache can be activated internally to cache raw HTML, but can also be used with johnny-cache, django-cache-machine, etc.\n * Single database query onto a single database table (if you have one model, no several backends)\n * Support for 'populate_from' attribute (copy values on saving in similar tags)\n * Support for UrlFields and ImageFields in admin\n * Support for django-storages for S3 (and possibly other backends) storage, directly from admin\n * Easily extendible as far as it's all about simple django models and fields\n * Out-of-the-box models for OpenGraph Facebook and Twitter tags\n * Includes Selenium tests for proper HTML generation\n * Test app included (.testapp)\n\n .. image:: assets/simple_seo_admin.png\n\n .. image:: assets/simple_seo_admin1.png\n\nWhat's NOT in django-simple-seo\n*******************************\n\n * Only implements view based backend. Maybe in future releases it will include Model and Path backend like in DjangoSeo.\n\nInstallation\n------------\n\nYou can use pip like this:\n\n.. code-block:: sh\n\n $ pip install django-simple-seo\n\nYou can use pip with git master code instead of pypi version:\n\n.. code-block:: sh\n\n $ pip install git+https://github.com/danigosa/django-simple-seo.git\n\nAdd to your settings:\n\n.. code-block:: python\n\n INSTALLED_APPS = (\n ...\n 'simple_seo',\n ...\n )\n\nRequeriments\n------------\n\n * staticfiles\n * south (optional, if migrations)\n * admin (this includes auth, sessions and contenttypes)\n * django-modeltranslation, django-linguo, django-vinaigrette (**optional**, for i18n)\n * django-storages (**optional**, for cloud storage)\n \n\n1. Create your SEO Model\n------------------------\n\nCreate a model subclassing the classes BaseMetada(title, author, description, keywords), OpenGraphMetada(includes facebook tags) or AllMetadata(Facebook and Twitter).\n\n.. code-block:: python\n\n from simple_seo.models import AllMetadata\n\n\n class MyMetadata(AllMetadata):\n \"\"\"\n My Seo Model\n \"\"\"\n\n\n2. Synchronize your DB\n----------------------\n\nSynchronize your database with **syncdb**, then your model with **migrate** if you are using migrations:\n\n.. code-block:: sh\n\n $ ./manage.py syncdb\n\nOr in case of using South:\n\n.. code-block:: sh\n\n $ ./manage.py schemamigration your_app --auto\n $ ./manage.py migrate your_app\n\n\n3. Register your model for view managment\n-----------------------------------------\n\nUse Django model notation for describing your seo models and the views related to be managed.\n\nThe simplest usage is to have just one seo model that manages all views. Do it like this in your **settings.py**:\n\n.. code-block:: python\n\n SEO_MODEL_REGISTRY = (\n ('testapp.MyMetadata', 'ALL'),\n )\n\nIn case you need several seo models a restrict them to certain views, add the following:\n\n.. code-block:: python\n\n SEO_MODEL_REGISTRY = (\n ('simple_seo.TestMetadata', ('template_test', )),\n )\n\nPlease note that simple_seo registry will load views by order and store the in a dictionary. That means:\n\n * Collisions in model definitions will result in last definition to be *always selected*\n * Defining just one 'ALL' registry will override the rest if it's declared *before* in the tuple\n\nExamples of bad configurations:\n\n.. code-block:: python\n\n SEO_MODEL_REGISTRY = (\n ('testapp.MyMetadata', 'ALL'),\n ('simple_seo.TestMetadata', ('template_test', )),\n )\n**PROBLEM**: 'simple_seo.TestMetadata' model won't ever be reached. 'template_test' view will be processed with 'testapp.MyMetadata'\n\n.. code-block:: python\n\n SEO_MODEL_REGISTRY = (\n ('testapp.MyMetadata', ('template_test', )),\n # ... More and More definitions\n ('testapp.MyMetadata', ('template_test2', 'template_test3')),\n )\n**PROBLEM**: 'template_test' view will never be processed as last registry overrides first.\n\nThere's no plans to make registry very exotic on this, just following very simple rules it can be as complex as you want, covering vast use cases.\n\n\n4. Register your model for administration\n-----------------------------------------\n\nAdd this lines to your admin.py:\n\n.. code-block:: python\n\n from simple_seo.admin import BaseMetadataAdmin\n from django.contrib import admin\n from .models import MyMetadata\n\n\n class MyMetadataAdmin(BaseMetadataAdmin):\n pass\n\n admin.site.register(MyMetadata, MyMetadataAdmin)\n\n\n5. Configure URLs for seo autodiscovering\n-----------------------------------------\n\n**WARNING:** It's a django related issue but once you call *admin.autodiscover()* the URLConf module remains corrupted forever, that means cannot dive into *urlpatterns*.\n\nTo solve that, try to add admin URL and do autodiscovering at the very end of your **urls.py** like this:\n\n.. code-block:: python\n\n # Put all your URLconfig that should be managed by simple_seo BEFORE admin\n urlpatterns = patterns(\n '',\n url(r'^test/', template_test, name='template_test'),\n )\n\n # Then add admin configuration AFTER your seo views\n admin.autodiscover()\n\n urlpatterns += patterns(\n '',\n url(r'^admin/', include(admin.site.urls)),\n )\n\n\nThis will avoid *autodiscover* admin views, and also to see your actual views urlpatterns.\n\n6. Add metadata for your views\n------------------------------\n\nYour views are autodiscovered for your convenience, create a metadata object for every view you want to administer\n\n .. image:: assets/simple_seo_admin2.png\n :width: 100%\n\n\n7. Add metadata to your template\n--------------------------------\n\nJust include this template tag in your **** section, no more template code needed, can be on the root *base.html* template and it will autodetect the view and inject appropriate metadata for each.\n\n.. code-block:: html\n\n {% load simple_seo %}\n \n \n \n \n {% view_metadata %}\n \n \n TEST\n \n \n\n7. Extend/Override default behaviour\n------------------------------------\n\n*\"I prefer to have images as URLs, not static files in my server\"*\n\nJust override **og_image** attribute. You can find all base models in **simple_seo.models**, and all tag fields in **simple_seo.fields**:\n\n.. code-block:: python\n\n from simple_seo.fields import URLMetaTagField, MetaTagField\n from simple_seo.models import AllMetadata\n from simple_seo import register\n\n\n class MyMetadata(AllMetadata):\n \"\"\"\n My Seo Model\n \"\"\"\n og_image = URLMetaTagField(name=\"og:image\") # Overrides default og:image field\n another_meta_tag = MetaTagField(name=\"myvariable\", max_length=\"25\") # Creates a new custom meta tag for the views\n\n # Register SEO Model\n register(MyMetadata)\n\n*\"I only want Facebook tags, and I prefer to add all fields by hand, no handy population, like a boss\"*\n\n.. code-block:: python\n\n from simple_seo.fields import URLMetaTagField, MetaTagField\n from simple_seo.models import OpenGraphMetadata\n from simple_seo import register\n\n\n class MyOpenGraphMetadata(OpenGraphMetadata):\n \"\"\"\n My OpenGraph Model\n \"\"\"\n og_title = MetaTagField(name=\"og:title\", populate_from=None) # Overrides default og:title field\n og_description = MetaTagField(name=\"og:description\", populate_from=None) # Overrides default og:description field\n\n # Register SEO Model\n register(MyMetadata)\n\n\n8. Cache Settings\n-----------------\n\nSome settings are provided to enable caching directly in the app:\n\n.. code-block:: python\n\n SEO_CACHE_PREFIX = getattr(settings, 'SEO_CACHE_PREFIX', 'simple_seo:')\n SEO_CACHE_TIMEOUT = getattr(settings, 'SEO_CACHE_PREFIX', 60 * 60 * 24)\n SEO_USE_CACHE = getattr(settings, 'SEO_CACHE_PREFIX', False)\n\n\n9. Sample App\n-------------\n\nYou have a complete sample app in **testapp** module in this repository.\n\n\n10. Multilang i18n Support\n--------------------------\n\nAs said before you can apply any 3rd party app for translating your models to django-simple-seo models.\nAs an example, this is a complete model translated thanks to django-vinaigrette app: https://github.com/ecometrica/django-vinaigrette\n\nComplete SEO model translated:\n\n.. code-block:: python\n\n from simple_seo.models import AllMetadata\n from simple_seo import register\n import vinaigrette\n\n\n class SiteMetadata(AllMetadata):\n \"\"\"\n Site Metadata\n \"\"\"\n\n class Meta:\n app_label = 'web'\n\n # Register SEO Model\n register(SiteMetadata)\n\n\n vinaigrette.register(\n SiteMetadata,\n [\n 'title',\n 'description',\n 'keywords',\n 'author',\n 'og:title',\n 'og:description',\n 'twitter:title',\n 'twitter:description',\n ]\n )\n\nAfter that, just run **./manage.py makemessages** and you're done. See django-vinaigrette for more details.\n\n\nContribute!\n-----------\n\nThen add to the root of the project your **local_settings.py** for everything your need, for instance adding debug toolbar local setting:\n\n.. code-block:: python\n\n INTERNAL_IPS = ('10.0.2.2', )\n \nTo execute the project with **vagrant** and **virtualbox** you can add this Vagrantfile and receipes to the local project and execute **vagrant up**:\n\nhttps://gist.github.com/danigosa/c2ac2d349c4fcf823cb7\n\nAfter box is provisioned you'll have an Ubuntu 14.04 with a Python 3.4 virtualenv.\n\nYou can find more info of how to develop with remote vagrant servers and the awesome Pycharm IDE here: http://codeispoetry.me/index.php/remote-server-with-pycharm-and-vagrant/\n\n\n\nChangelog\n=========\n\n**version 1.0**\n\n * Lots of bugfixing\n * Support for 'populate_from' feature. By default og:title, og:description will populate from title and description. Twitter url, title, image and description will populate from Facebook's\n * Now support for django-modeltranslation and django-linguo (preffixing with '_lang' database fields)\n * Support for django-storages with S3 or other cloud services (tested on S3 only)\n * URLFields don't fail on validation (django defaults patched)\n * Cache working (memcached and django-redis tested)\n * Increased tests for population deep testing (Firefox Selenium testing)\n * New registry by settings, giving control to the developer in a single point (it's backwards incompatible!)\n\n**version 0.4.1**\n\n * Refactors and bugfixings\n * Support for modeltranslation and linguo i18n backends\n\n**version 0.3.2**\n\n * Bugfixes in __str__ and __len__ when fields have NULL value in database\n\n**version 0.3.0**\n\n * Bugfixes\n * Added tests integrated with Selenium for proper HTML generation\n\n**version 0.2.4**\n\n * Bugfix error in print_tag that did not printed images and urls in templatetag\n\n\n**version 0.2.3**\n\n * Bugfix error in caching when i18n activated\n\n\n**version 0.2.2**\n\n * Bugfix errors in view autodiscover in some cases\n\n\n**Version 0.2.1**\n\n * Bugfixes\n * Support for South Migrations\n\n\n**Version 0.2**\n\n * Added support for namespaced views\n * Added support for ImageField based Image Metatags (og:image, twitter:image)\n * Added support for UrlField based URL Metatags (og:url, twitter:url)\n * Added more base classes to ease setup", "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/danigosa/django-simple-seo", "keywords": null, "license": "MIT License", "maintainer": null, "maintainer_email": null, "name": "django-simple-seo", "package_url": "https://pypi.org/project/django-simple-seo/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-simple-seo/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/danigosa/django-simple-seo" }, "release_url": "https://pypi.org/project/django-simple-seo/1.0.3/", "requires_dist": null, "requires_python": null, "summary": "Simple SEO Module for Django", "version": "1.0.3" }, "last_serial": 1193203, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "0d1ca187f9f9cfbdb366ac287c40e675", "sha256": "392113c558ee8bb6989be831f9461ad3165788f88cbeb0ef0a758ac1c0068bc4" }, "downloads": -1, "filename": "django-simple-seo-0.2.0.tar.gz", "has_sig": false, "md5_digest": "0d1ca187f9f9cfbdb366ac287c40e675", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7923, "upload_time": "2014-08-07T18:12:46", "url": "https://files.pythonhosted.org/packages/9c/5b/39fb48289cb3b3faf70f9c375c130aa9acbb3b121772aec7dd0d392b1a58/django-simple-seo-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "ede252f6749a119d8d0776c690823217", "sha256": "96a88f6c46666620f0b8e03d019e9effd3409fc44c63f659176c585e41c8c42a" }, "downloads": -1, "filename": "django-simple-seo-0.2.1.tar.gz", "has_sig": false, "md5_digest": "ede252f6749a119d8d0776c690823217", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9333, "upload_time": "2014-08-07T20:41:18", "url": "https://files.pythonhosted.org/packages/f8/cc/4184ad13ee3094319c635c98ac76d5939752120024609e9db5811cbfd950/django-simple-seo-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "cd2d71b88b103071d70feb7f8bb933fe", "sha256": "561ca1ad577100666d4830092f9cbcfc6ec245b2a5d70df8faf05b92eb356649" }, "downloads": -1, "filename": "django-simple-seo-0.2.2.tar.gz", "has_sig": false, "md5_digest": "cd2d71b88b103071d70feb7f8bb933fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9444, "upload_time": "2014-08-08T11:29:13", "url": "https://files.pythonhosted.org/packages/d4/e3/cbc296865a43a5a4468d8828af7b56d60eff10a1f10dde3f59cf55567680/django-simple-seo-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "f0aac78430510652fe4e934a4c95019f", "sha256": "6326eba50c228bd1193e73359ebabc790cae4aee6a278833c23599379c72b067" }, "downloads": -1, "filename": "django-simple-seo-0.2.3.tar.gz", "has_sig": false, "md5_digest": "f0aac78430510652fe4e934a4c95019f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9516, "upload_time": "2014-08-08T11:49:02", "url": "https://files.pythonhosted.org/packages/33/f8/37ab3c9e6cd5b503eeb7dbd18226c43251de049d39199276cee7435bf9b2/django-simple-seo-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "b063a149bdca7597d41165cd9d05663c", "sha256": "acecb518afa3015321b35fe92f2ba5eddfeb7017a40f6f38eca73f4f3d808a8c" }, "downloads": -1, "filename": "django-simple-seo-0.2.4.tar.gz", "has_sig": false, "md5_digest": "b063a149bdca7597d41165cd9d05663c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9927, "upload_time": "2014-08-08T12:24:21", "url": "https://files.pythonhosted.org/packages/c0/04/50f8b2f2161fe56c29925d301728a0e3a89d211acd2605be7f6574846eec/django-simple-seo-0.2.4.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "b9c85782f390e3c38addf99adb1271e9", "sha256": "832611f5e8bf74587a5915edbb5c4373920f8aade6f33318ba2fb6065d711b5c" }, "downloads": -1, "filename": "django-simple-seo-0.3.0.tar.gz", "has_sig": false, "md5_digest": "b9c85782f390e3c38addf99adb1271e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11383, "upload_time": "2014-08-11T17:24:22", "url": "https://files.pythonhosted.org/packages/16/13/c34216fa80919719dbe3ee2398839e8577a0fde7ff0bcccb9fa54f35fd59/django-simple-seo-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "9f47502003b520a89c8147e16ab6ba95", "sha256": "686f3ce491cf784436f7f29426344ece154259a27ce862c8f06f59426355c9ef" }, "downloads": -1, "filename": "django-simple-seo-0.3.1.tar.gz", "has_sig": false, "md5_digest": "9f47502003b520a89c8147e16ab6ba95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11470, "upload_time": "2014-08-14T11:58:42", "url": "https://files.pythonhosted.org/packages/9f/6e/d5913cd5944e119f2e5fb0836401a4f11e5fcd7477043b1fefcd882f935d/django-simple-seo-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "ddde8d82b9107e37fa31e96c1a336305", "sha256": "3f4b08ec6c24b5e745b16e50673e121688c93c195dacb259cbb2d54e244c9ea8" }, "downloads": -1, "filename": "django-simple-seo-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ddde8d82b9107e37fa31e96c1a336305", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11469, "upload_time": "2014-08-14T18:05:26", "url": "https://files.pythonhosted.org/packages/e3/a7/eff0dc08f484d74b4e313601df655d8496e1c2c4e03fccab8728424e0172/django-simple-seo-0.3.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "7d0b14ccfdb94d33656e3bd102ac5824", "sha256": "3d3f62fb6d6f876214d8ce214fba4d1784595aa73e6838f48e83bf2160a1b626" }, "downloads": -1, "filename": "django-simple-seo-0.4.0.tar.gz", "has_sig": false, "md5_digest": "7d0b14ccfdb94d33656e3bd102ac5824", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11738, "upload_time": "2014-08-14T20:52:29", "url": "https://files.pythonhosted.org/packages/cf/7c/948fc9f1dfb63bb928c7dfcb5537a1a9b2c0098637114a1ac1287429c478/django-simple-seo-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "4d13ae2379f8354cae8a9f34e87d37a3", "sha256": "6abeb57c43e11b3328f98d2c51dffc3e3f89acaf5877228e032df564db85391e" }, "downloads": -1, "filename": "django-simple-seo-0.4.1.tar.gz", "has_sig": false, "md5_digest": "4d13ae2379f8354cae8a9f34e87d37a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11807, "upload_time": "2014-08-16T10:39:53", "url": "https://files.pythonhosted.org/packages/93/e7/b18391ab16eccf716dec6ddce8dc44635d44b870595158e133d6a83a9011/django-simple-seo-0.4.1.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "2c228627ac795063dfc20404edaf3050", "sha256": "e27575b378fe26f559f5ac2889e2783d2c3b40c7c337908e8f18833662a1175a" }, "downloads": -1, "filename": "django-simple-seo-1.0.0.tar.gz", "has_sig": false, "md5_digest": "2c228627ac795063dfc20404edaf3050", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15079, "upload_time": "2014-08-17T12:33:54", "url": "https://files.pythonhosted.org/packages/20/4c/a094a644460553a6a2193d672a76f7bf0bcb8602727d78ebec83119b9533/django-simple-seo-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "dd98be9751e200d0c24634023fec3ea2", "sha256": "a5c8a3784ed0756ac3e2b28c57ea795f774661426aadf9982e8f1eefd78c911e" }, "downloads": -1, "filename": "django-simple-seo-1.0.1.tar.gz", "has_sig": false, "md5_digest": "dd98be9751e200d0c24634023fec3ea2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15066, "upload_time": "2014-08-17T16:08:23", "url": "https://files.pythonhosted.org/packages/15/99/412194b790a144c5ed48de2e55d842c82afb4b2cbb8ad8ddf248cccfb617/django-simple-seo-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "f374d45d4191e4bdb3d46b8c798c945a", "sha256": "00d95fb2c4506d29729b25f1de11ab791d827d407fb94a0ad4064b2bf4ae9c09" }, "downloads": -1, "filename": "django-simple-seo-1.0.2.tar.gz", "has_sig": false, "md5_digest": "f374d45d4191e4bdb3d46b8c798c945a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15073, "upload_time": "2014-08-17T16:28:40", "url": "https://files.pythonhosted.org/packages/6f/b9/7b7c734c6498f3d2185667a1e93995293550553d844982266d415f8626d3/django-simple-seo-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "3ab4635ccea402ce5093a9e8e8e72936", "sha256": "1667dc217f0871dbaa9299898551bab1aebc388eff4c230debeeb8f48a1b062f" }, "downloads": -1, "filename": "django-simple-seo-1.0.3.tar.gz", "has_sig": false, "md5_digest": "3ab4635ccea402ce5093a9e8e8e72936", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15080, "upload_time": "2014-08-17T16:37:50", "url": "https://files.pythonhosted.org/packages/61/a4/70a5abc14bf2b4b7290cef392ba3ee3adc6bd08850f8032d3e509c8aca37/django-simple-seo-1.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3ab4635ccea402ce5093a9e8e8e72936", "sha256": "1667dc217f0871dbaa9299898551bab1aebc388eff4c230debeeb8f48a1b062f" }, "downloads": -1, "filename": "django-simple-seo-1.0.3.tar.gz", "has_sig": false, "md5_digest": "3ab4635ccea402ce5093a9e8e8e72936", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15080, "upload_time": "2014-08-17T16:37:50", "url": "https://files.pythonhosted.org/packages/61/a4/70a5abc14bf2b4b7290cef392ba3ee3adc6bd08850f8032d3e509c8aca37/django-simple-seo-1.0.3.tar.gz" } ] }