Skip to main content

Bootstrap 4 templates for Django Rest Framework `render_form` tag

Project description

This package is no longer distributed on PyPI.

You can now review and download packages at our own Python registry- https://balto.baltorepo.com/open-source/python/packages/drf-form-bootstrap-4/

drf-form-bootstrap-4

Build Status

Bootstrap 4 templates for Django REST Framework render_form tag.

Requirements

Tested with Django 2.2, DRF 3.9, Python 3.6 & 3.5. Almost certainly works in earlier versions.

Installation

From PyPI:

pip install drf-form-bootstrap-4

Add drfformbootstrap4 to your INSTALLED_APPS setting.

INSTALLED_APPS = (
    ...
    'drfformbootstrap4',
)

Usage

Like the template packs in Django REST Framework, this supports three layouts:

Vertical

<form method="POST" novalidate>
  {% csrf_token %}
  {% render_form serializer template_pack='drfformbootstrap4/vertical' %}
  <div class="row">
    <div class="col text-right">
      <input class="btn btn-primary" type="submit" value="Submit">
    </div>
  </div>
</form>

Horizontal

<form method="POST" novalidate>
  {% csrf_token %}
  {% render_form serializer template_pack='drfformbootstrap4/horizontal' %}
  <div class="row">
    <div class="col text-right">
      <input class="btn btn-primary" type="submit" value="Submit">
    </div>
  </div>
</form>

Inline

Note that inline is less well-tested than the others, and at the moment the error states don't render properly. If this is a problem for you, add a comment to this issue.

<form method="POST" novalidate class="form-inline">
  {% csrf_token %}
  {% render_form serializer template_pack='drfformbootstrap4/inline' %}
  <div class="row">
    <div class="col text-right">
      <input class="btn btn-primary" type="submit" value="Submit">
    </div>
  </div>
</form>

Additional Options

Use the style field on your serializer to change the appearance of a field.

To display a field as text instead of as a field:

style={'class': 'form-control-plaintext'}

For inline checkboxes and radio buttons:

style={'inline': True}

Prepend/append text for inputs:

style={
    'prepend': 'text to prepend',
    'append': 'text to append',
}

Development

Pretty standard: fork this repo, make changes, make a GitHub pull request.

There are demo pages showing a variety of form fields and layouts. To use it, first install its dependencies:

pip install -r requirements.txt

Then run the server:

make runserver

When using this runserver, you don't need to install drfformbootstrap4 into your virtualenv before seeing changes. However if you want to see your changes reflected in a different application using the same virtualenv, install it with:

make install

Builds are here: https://travis-ci.org/mattfox/drf-form-bootstrap-4

License

© 2019 Matthew Fox

MIT

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

drf-form-bootstrap-4-0.5.2.tar.gz (10.6 kB view details)

Uploaded Source

File details

Details for the file drf-form-bootstrap-4-0.5.2.tar.gz.

File metadata

  • Download URL: drf-form-bootstrap-4-0.5.2.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.0

File hashes

Hashes for drf-form-bootstrap-4-0.5.2.tar.gz
Algorithm Hash digest
SHA256 47e0c306b391d59076bedef69eae1fbefccd56f09cd28c3da42e280027a9325e
MD5 75e08228d64dfbd69762c3d918cfb20d
BLAKE2b-256 e53448e5981c3695e67b9583b432cc2a89bfb45239765914f0a65444f83e8b47

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