Here is my model file that contains a save method - When I do a assert
False, self.name from within my if statement in my save method I get
the name of the style.  However, when I do a assert False, self.image
I get nothing.  That only happens when I edit the style from within a
collection using edit_inline() - Thanks for any help on trying to
figure out why my CharField (name) returns a value and my ImageField
(image) doesn't return anything when editing a style from within a
collection.

class Style(models.Model):
    name = models.CharField(maxlength=200, core=True)
    image = models.ImageField(upload_to="site_media/")
    simage = models.ImageField(upload_to="site_media/thumbnails/",
editable=False)
    mimage = models.ImageField(upload_to="site_media/thumbnails/",
editable=False)
    collection = models.ForeignKey(Collection,
edit_inline=models.TABULAR, num_in_admin=6)

    def save(self):
        if not self.simage and not self.mimage:
            THUMBNAIL_SIZE = (50, 50)
            THUMBNAIL_SIZE2 = (600, 450)
            var = self.get_image_filename()
            var2 = var.split('\\')[1]
            small = var.split('\\')[0] + "\\" + var2.split('.')[0] +
"_sm." + var2.split('.')[1]
            medium = var.split('\\')[0] + "\\" + var2.split('.')[0] +
"_md." + var2.split('.')[1]
            self.save_simage_file(small, '')
            self.save_mimage_file(medium, '')
            firsti = Image.open(self.get_image_filename())
            secondi = Image.open(self.get_image_filename())
            if firsti.mode not in ('L', 'RGB'):
                firsti = firsti.convert('RGB')
            if secondi.mode not in ('L', 'RGB'):
                secondi = secondi.convert('RGB')
            firsti.thumbnail(THUMBNAIL_SIZE, Image.ANTIALIAS)
            secondi.thumbnail(THUMBNAIL_SIZE2, Image.ANTIALIAS)
            firsti.save(self.get_simage_filename())
            secondi.save(self.get_mimage_filename())
       super(Style, self).save()

////////////////////

Thanks for any help


On Aug 27, 1:48 pm, Greg <[EMAIL PROTECTED]> wrote:
> Looking more into the problem i noticed that when I do a 'assert
> False, self.get_photo_filename()' I get nothing in return.  When I do
> the same thing (without edit_inline) I get the the filename of the
> image.
>
> Does anybody know why when I use edit_inline my
> self.get_photo_filename statement from within my Photo save method
> doesn't work?
>
> Above is my code
>
> Thanks
>
> Greg wrote:
> > Hello,
> > I'm having a problem when I try to create thumbnails for a class that
> > is has edit_inline.  Here are my two models:
>
> > class Collection(models.Model):
> >     name = models.CharField(maxlength=200)
> >     collectionslug = models.SlugField(prepopulate_from=["name"])
> >     photo = models.ImageField(upload_to='site_media/')
> >     description = models.TextField(maxlength=1000)
> >     manufacturer = models.ForeignKey(Manufacturer)
> >     type = models.ForeignKey(RugType)
> >     material = models.ForeignKey(RugMaterial)
>
> > class Style(models.Model):
> >     name = models.CharField(maxlength=200, core=True)
> >     color = models.CharField(maxlength=100)
> >     color_cat = models.ForeignKey(ColorCategory)
> >     image = models.ImageField(upload_to="site_media/")
> >     simage = models.ImageField(upload_to="site_media/thumbnails/",
> > editable=False)
> >     mimage = models.ImageField(upload_to="site_media/thumbnails/",
> > editable=False)
> >     theslug = models.SlugField(prepopulate_from=('name',), blank=True,
> > editable=False)
> >     manufacturer = models.ForeignKey(Manufacturer, blank=True,
> > editable=False) #Can delete
> >     collection = models.ForeignKey(Collection,
> > edit_inline=models.TABULAR, num_in_admin=6)
> >     topsellers = models.BooleanField()
> >     newarrivals = models.BooleanField()
> >     closeout = models.BooleanField()
> >     manufacturer = models.ForeignKey(Manufacturer)
> >     sandp = models.ManyToManyField(Choice, limit_choices_to =
> > {'choice__id': 2})
>
> >     def save(self):
> >         if not self.simage:
> >             THUMBNAIL_SIZE = (50, 50)
> >             THUMBNAIL_SIZE2 = (600, 450)
>
> >             self.save_simage_file(self.get_image_filename(), '')
> >             self.save_mimage_file(self.get_image_filename(), '')
>
> >             photo = Image.open(self.get_image_filename())
> >             photo2 = Image.open(self.get_image_filename())
>
> >            if photo.mode not in ('L', 'RGB'):
> >                 photo = photo.convert('RGB')
>
> >             if photo2.mode not in ('L', 'RGB'):
> >                 photo2 = photo2.convert('RGB')
> >             photo.thumbnail(THUMBNAIL_SIZE, Image.ANTIALIAS)
> >             photo2.thumbnail(THUMBNAIL_SIZE2, Image.ANTIALIAS)
>
> >             photo.save(self.get_simage_filename())
> >             photo2.save(self.get_mimage_filename())
>
> >         super(Style, self).save()
>
> > /////////////
>
> > When I go into the Style class I can successfully create my two
> > thumbnail images when I save a style.  However, when i display my
> > styles within my collection class (edit_inline) and I create a new
> > style and select save then I get the following error:
>
> > IOError at /admin/rugs/collection/2/
> > [Errno 2] No such file or directory: u'c:/django/site_media\
> > \thumbnails________________________________
>
> > //////////////////////////////////
>
> > Can I not create thumbnails when my class is edit_inline?
>
> > Thanks


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to