Login

All snippets written in Python

2957 snippets

Snippet List

Extended Paginator

Generate a list of page links like: First Prev 1 2 3 *4* 5 6 7 Next Last To use: 1. Put Paginator.py into your app directory 2. Copy pagination.html to your templates directory 3. pass a paginator object to your Context 4. include the pagination.html template on the page you wanted paginated Feel free to send ideas for improvement. If enough people ask, I'll package this as a single app and perhaps even make the template inclusion into a templatetag for even easier use.

  • pagination
  • paginator
  • paging
  • pager
Read More

Drop down Datefield

Simple drop-down date field for use. You can specify date range by initiating new DateDropdownWidget. Welcome comments!

  • newforms
  • forms
  • dropdown
  • datefield
  • field
Read More

Incrementally Return CSV

The first function (ftype_batch) is a view that passes the first part of the CSV filename and a queryset intended to write out to the file. run_batch prepares the HttpResponse for incrementally writing, and write_batch actually writes out the data. The logic in write_batch is custom to what I need done, but as long as the csv writer receives a sequence to write, it should work.

  • csv
  • incremental
Read More

Templatetag for JS merging and compression

**Javascript merging and compression templatetag** One of the most important things for improving web performance is to reduce the number of HTTP requests. This is a templatetag that merges several javascript files (compressing its code) into only one javascript. It checks if this merged file is up to date, comparing modification time with the other javascripts to merge. Usage: {% load jsmerge %} {% jsmerge mergedfile js/file1.js js/file2.js js/file3.js %} The previous code will: 1. Search in `settings.MEDIA_ROOT` for all files passed by parameter. 2. Create a `/path/to/media_root/mergedfile.js` (if it doesn't exist or it's not up to date). This file is a merging plus compression of all javascripts. 3. Return this HTML fragment: `<script type="text/javascript" src="/media_url/mergedfile.js"></script>`

  • javascript
  • merging
  • compression
  • tunning
Read More

shortcut for saving newforms to model

I come up with this short cut of saving data from newforms to a model, for newforms that contains attributes from several models or some attributes that doesn't found in a model attributes

  • newforms
  • model
Read More

Wiki-like markup for sub templates

I wanted to have the possibility to use a wiki-like markup style in my flatpages for various purposes (embedding images, quoting, etc.) After a few dead ends I came up with this, which is quite nice I think. > It basically takes a named tag, loads the corresponding template, passes in all arguments, renders the template and replaces the named tag with the result. *The markup looks like this:* > [[example:value to pass|option1=somevalue option2=values can have spaces too! without having to put them in quotes option3=some other value]] *This results in:* * Filter tries to load wiki/wiki_example.html * If it is loaded, it passes an WikiElement containing the value and the options to the template, renders it and replaces the tag with the rendered template *In the "wiki/wiki_example.html" template you can use it like this:* {{param.value}} {{param.opts.option1}} Or loop over param.opts.iteritems.

  • template
  • filter
  • markup
  • wiki
Read More

Sumar dias habiles / Working days

Dada una fecha_origen, incrementa N dias a partir de esa fecha ignorando sábados y domingos. Increments a date by n days without counting weekends. Just working days.

  • date
  • python
  • dias_habiles
  • working_days
Read More

Basic logic filters

Usage: {% if item|IN:list %} The item is in the list. {% endif %} {% if customer.age|LE:18 %} Go play out here. {% endif %} {% if product.price|add:delivery_cost|GT:balance %} Insufficient funds. {% endif %} You've got the idea. Special thanks to [guychi](http://www.djangosnippets.org/snippets/379/).

  • template
  • filter
  • logic
Read More

Code syntax highlighting templatetag

Replaces <code> blocks with syntax highlighted code. Use CSS to actually get the colours you want, look at pygments documentation for extracting css for various styles. This snippet has the advantage of falling back on <pre> if anything goes wrong, and attempting to guess the syntax of code, falling back on python.

  • templatetag
  • pygments
  • highlighting
  • beautifulsoup
  • templatetags
  • syntax
  • syntax-highlightin
Read More

Logging solution for mod_python/FCGI

The solution is based on [dballanc's snippet](http://www.djangosnippets.org/snippets/420/). Can easily be combined with any of the [SQL tracing solutions](http://www.djangosnippets.org/tags/debug/). You might want to run a separate logging server and redirect your logs there. Please refer to the [logging reference manual](http://docs.python.org/lib/module-logging.html).

  • log
  • mod_python
  • debug
  • logging
  • fcgi
Read More

filter/search a newforms select widget

Adds a filter input above a select widget that allows live-filtering on the client-side (no ajax) in Firefox. Example: make_fields_searchable(ModelItemForm, { 'publisher': {'set_size': 8}, 'developer': {'set_size': 8}, 'genre': {}, 'platform': {} })

  • filter
  • newforms
  • search
  • model
  • widgets
  • select
Read More

Automatically trim newforms text fields

Makes sure the value a user entered into a a text-based field is automatically trimmed during form cleaning / validation. The 'field' parameter is expected to be a newforms.fields.Field _instance_.Only modifies str and unicode descending values, and passes everything else on untouched. Example: form = form_for_model(Person) make_trimming(form.fields['name'])

  • newforms
  • strings
  • trim
Read More

AMF Message passing through Middleware

Middleware for communicating with Flash Player via Flashticle and Django. Setup a view at /gateway/math/multiply like so: def multiply(request, m1, m2): return m1 * m2 Then in your Flex/Flash app you call "math.multiply" on a NetConnection pointing to http://domain.com/gateway/ Does not yet support authentication.

  • flash
  • amf
  • flashticle
Read More

CleanCharField

I was about to start an online community but every time you allow people to post something as a comment you never know what they come up to, especially regarding profanities. So I come up with this idea, I put together some code from the old style form validators and the new newform style, plus some code to sanitize HTML from snippet number [169](http://www.djangosnippets.org/snippets/169/), and the final result is a CharField that only accept values without swear words, profanities, curses and bad html. Cheers.

  • validator
  • newforms
  • forms
  • html
  • sanitize
  • profanities
Read More
Author: DvD
  • -2
  • 0