Snippet List
This Base64Field class can be used as an alternative to a BlobField, which is not supported by Django out of the box.
The base64 encoded data can be accessed by appending _base64 to the field name. This is especially handy when using this field for sending eMails with attachment which need to be base64 encoded anyways.
**Example use:**
class Foo(models.Model):
data = Base64Field()
foo = Foo()
foo.data = 'Hello world!'
print foo.data # will 'Hello world!'
print foo.data_base64 # will print 'SGVsbG8gd29ybGQh\n'
- django
- model
- field
- base64
- blob
- base64field
I tend to have all my python code together in a 'python' directory.
e.g. a typical project layout of mine looks like:
/python
/python/myproject - project python code
/python/django - local copy of django
/python/foolib - some third party library
/media
/templates
...
Since I don't want to set the python path explicitly I just assume the 'manage.py' is in the right place and use its __file__ variable to set up the python path correctly.
I use the same trick for my settings.py for setting MEDIA_ROOT and TEMPLATE_DIRS.
- python
- path
- magic
- pythonpath
- sys.path
I wanted to mark rows with an erroneous input with 'class="error"' and move the errorlist below the input tag so I wrote a NormalRowFormatter which behaves like a format string by overwriting \_\_mod\_\_.
Examples:
class MyForm(PrettyBaseForm, forms.Form):
# add your fields here
SomethingForm = form_for_model(Something, form=PrettyBaseForm)
- newforms
- error
- baseform
- as_table
- pretty
- prettybaseform
- _html_output
- style
This snippet provides a form_for_model and form_for_instance function which create newforms that respect the unique and unique_together constraints defined in the model.
One thing about the coding style in this code snippet: Classes are capitalized even if they're passed as arguments. Thus "Model" is a model class while "model" is a model instance.
- newforms
- form_for_model
- form_for_instance
- unique_together
- unique
- formfield_factory
bikeshedder has posted 6 snippets.