skip to navigation
skip to content

Not Logged In

django-smart-save 0.0.11

Automatically validates when you call your model’s save()

Make save call full_clean.

Do you think Django models save method will validate all fields (i.e. call full_clean) before saving or any time at all? Wrong!

I discovered this awful truth when I couldn’t understand why a model object with an email field (without blank=True) could be saved with an empty string as email address.

More info:


First add the application to your Python path. The easiest way is to use pip:

pip install django-smart-save

You should install by downloading the source and running:

$ python install


Make sure you have django.contrib.auth installed, and add the smart_save application to your INSTALLED_APPS list:


You can specify a different method name in your project settings (default: save_if_valid):


Usage Overview

It is simple:

>>> user = User(username="chris")
>>> user.save_if_valid()
>>> user = User(username="")
>>> user.save_if_valid()
>>> user._errors
{'username': ['This field cannot be blank.']}


Anyone is free to use or modify this software under the terms of the BSD license.

File Type Py Version Uploaded on Size
django-smart-save-0.0.11.tar.gz (md5) Source 2015-06-19 2KB
  • Downloads (All Versions):
  • 1 downloads in the last day
  • 116 downloads in the last week
  • 580 downloads in the last month