Ich erstelle eine mehrsprachige Webanwendung mit Python und webapp2.So modellieren Sie mehrsprachige Objekte in Python mit webapp2
Ich habe ein Objekt namens Tag, das Übersetzungen in mehrere Sprachen hat. Aus diesem Grund habe ich die folgenden Modelle erstellt:
class Language(ndb.Model):
code = ndb.StringProperty()
name = ndb.StringProperty(indexed=False)
class MultilingualText(ndb.Model):
language = ndb.KeyProperty(kind=Language)
text = ndb.TextProperty(indexed=False)
class Tag(ndb.Model):
translations = ndb.StructuredProperty(MultilingualText, repeated=True, indexed=False)
Ich möchte fragen, ob dies der richtige Weg ist, eine solche Aufgabe zu tun, und wie diese Struktur kann zusammen mit WTForms für die Validierung, etc. verwendet werden
Vielen Dank im Voraus!
WtForms und Jinja2 unterstützen Lokalisierung (I18n) und Babel. Ich schlage vor, dass Sie diese Tools studieren und prüfen, ob sie zu Ihren Projektzielen passen. Normalerweise ist das der richtige Weg. – voscausa
Einige Fragen - Möchten Sie wahrscheinlich jedes Mal, wenn Sie ein Tag erhalten, alle Übersetzungen für ein bestimmtes Tag wünschen? Wie groß könnte ein Stück Text sein? Wenn Sie nicht ständig alle Übersetzungen benötigen, ist es besser, wenn Sie jede Übersetzung als Kind des Tags speichern, wobei der Schlüssel die Sprache ist und nur eine bestimmte Übersetzung abhängig von der Sprache des Benutzers abgerufen wird. Nur ein paar Gedanken ;-) –
@DimitrisMarkis bitte sehen Sie die Antwort und machen Sie Kommentare! –