KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a problem in one of my models. I'm uploading an image, and I want to store the id (pk in the database table) but I need to know at which point Django will have access to self.id . models.py class BicycleAdItemKind(MPTTModel): def url(self, filename): pdb.set_trace() url = "MultimediaData/HelpAdImages/ItemKind/%s/%s" % (self.id, filename) return url def item_kind_image(self): return '<img align="middle" src="/media/%s" height="60px" />' % self.image item_kind_image.allow_tags = True # Bicicleta completa, Componentes para bicicleta, Acessorios para ciclista n_item_kind = models.CharField(max_length=50) parent = TreeForeignKey('self', null=True, blank=True, related_name='children') description = models.TextField(null=True, blank=True) image = models.ImageField(upload_to=url, null=True, blank=True) date_inserted = models.DateTimeField(auto_now_add=True) date_last_update = models.DateTimeField(auto_now=True) def __unicode__(self): return self.n_item_kind class MPTTMeta: order_insertion_by = ['n_item_kind'] The problem is in the url() method; I can only get self.id when updating an object, I don't get the self.id when creating a new object. How can I modify this model so that I get self.id when creating a new object? With the current code, when I'm creating a new object I will end up with a url like: MultimediaData/HelpAdImages/ItemKind/None/somefile.jpg And I need to have something like: MultimediaData/HelpAdImages/ItemKind/35/somefile.jpg Any clues?
Tags (comma-separated)
Save Edits
Cancel