Skip to main content

Provide a workaround to use different method from GET or POST inside HTML forms

Project description

Build Status PyPI Version Coverage Status Python 3.4+ Django 1.8, 1.10, 1.11, 2.0+ License MIT

django-http-method

Provide a workaround to use different method than GET or POST inside HTML forms in django templates. Works only with Class Based View.

Installation

From source code:

python setup.py install

From pip:

pip install django-http-method

Usage

Add django_http_method to your settings.INSTALLED_APPS
INSTALLED_APPS = (
    [...],
    django_http_method,
    [...],
)
Add the mixin to a CBV
from django.views.generic import View
from django_http_method import HttpMethodMixin

class TestView(HttpMethodMixin, View):
	pass
In your template, load http_method and use {% http_[method] %} in your forms:
{% load http_method %}

<form action="/" method="post">
    {% csrf_token %}
    {% http_put %}
    [...]
    <button type="submit">Send a PUT request</button>
</form>


<form action="/" method="post">
    {% csrf_token %}
    {% http_patch %}
    [...]
    <button type="submit">Send a PATCH request</button>
</form>

The corresponding method of your View will now be called. For instance, if {% http_put %} was used, then TestView.put() will be called and any request parameter will be in request.PUT.


Changelog

0.4.0

  • Will now search for parameters in body for methods PUT and PATCH
  • Method will default to request.method if '_method' parameter was not found

0.3.2

  • Added end slash '/' at the end of HTML input in templatetags

0.3.0

  • Removing '_method' from request parameters

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-http-method-0.4.0.tar.gz (4.9 kB view details)

Uploaded Source

File details

Details for the file django-http-method-0.4.0.tar.gz.

File metadata

  • Download URL: django-http-method-0.4.0.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.3

File hashes

Hashes for django-http-method-0.4.0.tar.gz
Algorithm Hash digest
SHA256 90954e7158ddc5065f1eb970709c2fa441262fd3274d2ca2fa194918c59bd4cb
MD5 1386f010962984f74317cb6adbf3352c
BLAKE2b-256 6e7c8c54272156dd96e179414913dd06f8c027298ffe8ca06edc986079b3f5b3

See more details on using hashes here.

Supported by

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