Skip to main content

A application to position objects anywhere on a page.

Project description

BUILD

Backwards incompatible changes made in version 0.2.2

COMBINE_STRING is now used to build the template list when using PositionContent.render or render_content template tag.

Before:

/positions/my_position/<app>__<model>.html

New:

/positions/my_position/<app> <combine_string> <model>.html

Installation

Using PIP:

pip install django-kamasutra

or download the app here

python setup.py install

Add positions to your settings INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'positions',
    ...
)

Add positions to your URLS:

import positions.urls

urlpatterns += patterns('',
    url(r'^positions/', include(positions.urls)),
)

Run syncdb:

>>> ./manage.py syncdb

Getting Started

Creating your first position

The minimum required arguments to create a positions is a name, which is a SlugField.

from positions.models import Position

position = Position.objects.create(name="MyPosition")

Add something to your Position

The position manager has a add_object method that takes, at minimum, 2 arguments, position and obj

  • position should be a positions.Position instance

  • obj can be any model instance

from myapp.models import MyApp

obj = MyApp.objects.get_latest()

Position.objects.add_object(position=position, obj=obj)

Retrieve your position content

The position manager has a get_content method that takes at least 1 argument, position.

  • position should be a positions.Position instance

position = Position.objects.get(name="MyPosition")

content = Position.objects.get_content(position=position)

Retrieve your position content via templatetag

{% get_position_content position as content %}

get_position_content expects [position] [as] [varname]

  • position can be a positions.Position instance or a name of a position

Position {{ position }} has the following content:<br/>
<ul>
{% for obj in content %}
    <li>{{ obj }}</li>
{% endfor %}
</ul>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-kamasutra-0.2.11.tar.gz (533.6 kB view details)

Uploaded Source

File details

Details for the file django-kamasutra-0.2.11.tar.gz.

File metadata

File hashes

Hashes for django-kamasutra-0.2.11.tar.gz
Algorithm Hash digest
SHA256 bdd3ae895fc87c728a8c89a863fbeedd0d80cd3eaafb2e7af8a622cc484df3cd
MD5 f025ad3c4d7b165de1fdf037dd3984df
BLAKE2b-256 e236086537bc9b7afd5ad4b1d61d01e19864a23b4db9eb81163e6d7f72f8e3c0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page