Maybe this helps: http://groups.google.com/group/django-multilingual/browse_thread/thread/a8f521068ab5e0a4
On 23 Jun., 14:08, Marco Bazzani <alfred.einst...@gmail.com> wrote: > ok this is a little bit complex problem (at least for me) > > let's supose that I've a model like this one: > > class News(models.Model): > name = CharField(max_length=200, unique=True) > body = TextField() > > usually I put a slug field like this one > > slug = CharField(max_length=200, unique=True, blank=True) > > and instead of using models.Model as parent class I use this one: > > class UniqueSlugFromName(models.Model): > class Meta: > abstract = True > def save(self): > """Auto-populate an empty slug field from the MyModel name and > if it conflicts with an existing slug then append a number and try > saving again. > name = original > slug = the slug > """ > if not self.slug: > self.slug = slugify(self.name) # Where self.name is the > field used for 'pre-populate from' > > while True: > try: > super(UniqueSlugFromName, self).save() > # Assuming the IntegrityError is due to a slug fight > except IntegrityError: > match_obj = re.match(r'^(.*)-(\d+)$', self.slug) > if match_obj: > next_int = int(match_obj.group(2)) + 1 > self.slug = match_obj.group(1) + '-' + str(next_int) > else: > self.slug += '-2' > else: > break > > so the Model class is now something like this: > > class News(models.Model): > name = CharField(max_length=200, unique=True) > body = TextField() > slug = CharField(max_length=200, unique=True, blank=True) > > in this way every slug field is populated with the slugify version of > the name field. > > now I need to translate the 2 fields name and body so instead of the > above class I change this like this one > > class News(models.Model): > slug = CharField(max_length=200, unique=True, blank=True) > class Translation(multilingual.Translation): > name = CharField(max_length=200) > body = TextField() > > but now the slug field is populated with the value of "none" I think > because the value of the fields is not yet in the database > moreover I should need translatable slug too so I can request the page > with all its urls for example > > /news/hello-I-am-a-news/ -> content in english > /news/sono-una-news/ -> content in italian > > is there a way to solve this problem ? > cheers > Marco --~--~---------~--~----~------------~-------~--~----~ 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 django-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---