コード例 #1
0
ファイル: field.py プロジェクト: jordotech/satchmofork
    def _save_rename(self, instance, **kwargs):
        if hasattr(self, '_renaming') and self._renaming:
            return
        if self.auto_rename is None:
            # if we get a SettingNotSet exception (even though we've already
            # imported/loaded it), that's bad, so let it bubble up; don't try
            # to guess a default (which should be set in the default config in
            # the first place.)
            self.auto_rename = config_value('THUMBNAIL', 'RENAME_IMAGES')

        image = getattr(instance, self.attname)
        if image and self.auto_rename:
            if self.name_field:
                field = getattr(instance, self.name_field)
                image = rename_by_field(image.name, '%s-%s-%s' \
                                        % (instance.__class__.__name__,
                                           self.name,
                                           field
                                           )
                                        )
            else:
                # XXX this needs testing, maybe it can generate too long image names (max is 100)
                image = rename_by_field(image.name, '%s-%s-%s' \
                                        % (instance.__class__.__name__,
                                           self.name,
                                           instance._get_pk_val()
                                           )
                                        )
            setattr(instance, self.attname, image)
            self._renaming = True
            # Remove current cached thumbnails as a new image will be used
            self._delete_thumbnail(self, instance, delete_file=False)
            instance.save()
            self._renaming = False
コード例 #2
0
ファイル: field.py プロジェクト: eyeyunianto/satchmo
    def _save_rename(self, instance, **kwargs):
        if hasattr(self, '_renaming') and self._renaming:
            return
        if self.auto_rename is None:
            # if we get a SettingNotSet exception (even though we've already
            # imported/loaded it), that's bad, so let it bubble up; don't try
            # to guess a default (which should be set in the default config in
            # the first place.)
            self.auto_rename = config_value('THUMBNAIL', 'RENAME_IMAGES')

        image = getattr(instance, self.attname)
        if image and self.auto_rename:
            if self.name_field:
                field = getattr(instance, self.name_field)
                image = rename_by_field(image.name, '%s-%s-%s' \
                                        % (instance.__class__.__name__,
                                           self.name,
                                           field
                                           )
                                        )
            else:
                # XXX this needs testing, maybe it can generate too long image names (max is 100)
                image = rename_by_field(image.name, '%s-%s-%s' \
                                        % (instance.__class__.__name__,
                                           self.name,
                                           instance._get_pk_val()
                                           )
                                        )
            setattr(instance, self.attname, image)
            self._renaming = True
            # Remove current cached thumbnails as a new image will be used
            self._delete_thumbnail(self, instance, delete_file=False)
            instance.save()
            self._renaming = False
コード例 #3
0
ファイル: field.py プロジェクト: grengojbo/fs_project
 def _save_rename(self, instance, **kwargs):
     if hasattr(self, '_renaming') and self._renaming:
         return
     if self.auto_rename == NOTSET:
         try:
             self.auto_rename = config_value('THUMBNAIL', 'RENAME_IMAGES')
         except SettingNotSet:
             self.auto_rename = False
     
     image = getattr(instance, self.attname)
     if image and self.auto_rename:
         if self.name_field:
             field = getattr(instance, self.name_field)
             image = rename_by_field(image.path, '%s-%s-%s' \
                                     % (instance.__class__.__name__,
                                        self.name,
                                        field
                                        )
                                     )
         else:
             # XXX this needs testing, maybe it can generate too long image names (max is 100)
             image = rename_by_field(image.path, '%s-%s-%s' \
                                     % (instance.__class__.__name__,
                                        self.name,
                                        instance._get_pk_val()
                                        )
                                     )
         setattr(instance, self.attname, image)
         self._renaming = True
         instance.save()
         self._renaming = False