Commit graph

30 commits

Author SHA1 Message Date
Matthew Tretter
501d3c7ad3 Now using contribute_to_class.
By creating the Descriptor using contribute_to_class (instead of in
ImageModelBase's __init__), we take the first step towards eliminating the need
to extend ImageModel at all.
2011-09-20 15:44:54 -04:00
Matthew Tretter
82348d4931 Changed how cache files are named.
Removed the cache_dir, cache_filename_fields and cache_filename_format
properties of IKOptions. While these were very powerful, I felt that it was
unnecessarily confusing to have two properties (cache_dir and
cache_filename_format) that determine the filename. The new cache_to property is
modeled after ImageField's upload_to and behaves almost identically (the only
exception being that a callable value receives different arguments). In
addition, I felt that the interpolation of model properties provided by
cache_filename_fields, though useful, would be better handled by a utility
function outside of this library.
2011-09-18 21:08:49 -04:00
Matthew Tretter
8cfe485a5a Storage can be specified on a per-spec basis.
If not defined on the spec, IKOptions.default_storage will be used. If that's
not defined, it will fall back to the image field's storage.
2011-09-10 00:25:34 -04:00
Matthew Tretter
57a28091c5 Added default_image_field
This works kind of like Django's models' _default_manager. If your specs don't
specify an image_field, and your IKOptions don't specify a default_image_field,
the first ImageField your model defines will be used.
2011-09-10 00:25:27 -04:00
Matthew Tretter
4c78f2d24c _imgfield is now a property of ImageSpec
Moved _imgfield from ImageModel to ImageSpec. Theoretically, this will allow you
to have specs that use different image fields on the same model.
2011-09-10 00:24:37 -04:00
Matthew Tretter
db4d704f71 Changed ImageSpec constructor so you can use static properties.
For example:

    class MyImageSpec(ImageSpec):
        quality = 100

    class Photo(ImageModel):
        display = MyImageSpec()
2011-09-08 16:48:53 -04:00
Matthew Tretter
def8dea23f Storage moved onto ImageSpec. 2011-09-08 10:28:54 -04:00
Matthew Tretter
cd3395b68f Processors are now instance-based. 2011-09-08 10:28:50 -04:00
Matthew Tretter
a9895f335a Using spec properties from ImageModel. 2011-09-08 10:00:22 -04:00
Markus Kaiserswerth
3e3302c7f7 Improve fault tolerance of Accessor._delete()
Handle/ ignored NotImplementedError and IOError which might get thrown
by the storage backend on delete.
2011-08-26 16:42:14 +02:00
Josh Ourisman
5976a512e6 allowing any fields on the object to be specified for use in naming of generated images; default to allowing pk 2011-06-28 14:27:47 -04:00
Josh Ourisman
9845befd96 Added the pk of the object into the dictionary of values passed to the string formatting for cache_filename. 2011-06-28 11:08:05 -07:00
Bryan Veloso
c566378764 Accessor._delete() and Accessor._exists() needed conditionalizing as well. ikflush was yelling at me. 2011-02-13 05:52:07 +08:00
Greg Newman
2b80ccf2e3 patch applied badly, fixing if 2011-02-12 04:12:37 +08:00
Greg Newman
34a2640cf5 if the ImageField is null and not required, don't create 2011-02-12 04:06:19 +08:00
Bryan Veloso
ea35379fd2 Don't create the image if spec.pre_cache is True. 2011-02-10 16:23:36 -08:00
Justin Driscoll
4ce59d3e31 Reverted changes to cache path that could possible cause filename collisions 2010-04-22 16:39:51 -04:00
Justin Driscoll
02019f7263 Imagekit not longer uses the appends the upload_to path of the image when generating the cache filename. The new default format is [media_root]/[cache_dir]/[cache_filename]. 2010-01-25 16:19:29 -05:00
Justin Driscoll
125c2c1470 Cleaned up trailing whitespace 2009-12-19 11:01:54 -05:00
Ben Jackson
26f01721df Add IKOption.storage to explicitly set cached thumbnail storage.
Original image storage is still the default, and the original image
is always read from its own storage.
2009-12-17 22:26:19 -08:00
Justin Driscoll
2e0530bb50 Added support for functions in cache_dir 2009-08-11 17:58:22 -04:00
Justin Driscoll
eb97ed1180 spec.name now respects the upload_to path and added additional error handling to Transpose:auto 2009-07-19 15:26:53 -04:00
Justin Driscoll
7a04da81e1 Updated preprocessor implementation 2009-07-19 13:50:31 -04:00
Justin Driscoll
510d4fc1df IOErrors now pass silently when generating spec images 2009-07-09 14:42:49 -04:00
Justin Driscoll
70da53ba4d Added format processor to force a format/extension change 2009-06-04 11:47:16 -04:00
Justin Driscoll
47e087e3b4 Fixed handling of palleted images 2009-06-04 11:06:11 -04:00
Justin Driscoll
a0cd5c5774 Wrapped opened file in StringIO 2009-02-04 14:38:30 -05:00
Justin Driscoll
45f4c954f0 Added a check to remove any wrappers from the file like object returned in storage.open() 2009-02-04 14:23:52 -05:00
Justin Driscoll
e1e2b52daa Removed dependance on storage.path() which may not be implemented by storage classes 2009-02-04 13:49:20 -05:00
Ariel Nunez
920bf47128 Added setup.py and relocated source dir 2009-02-02 15:46:41 -05:00
Renamed from src/imagekit/specs.py (Browse further)