2017-02-13 4 views
0

Ich möchte neue Bachstel-Snippet-Modelle hinzufügen, kann jedoch keine Dokumentation bezüglich der korrekten Dateibenennung finden, um mit deren Erstellung zu beginnen. stelle ich sie in meine apps model.py Datei oder hat es eine spezifische Methode ähnlich wagtailadmin? Vielen Dank.Hinzufügen neuer Bachstelzen-CMS-Snippets

Antwort

1

Snippets sind gängige Django-Modelle, die mit einer Decorator-Funktion registriert werden. Daher leben sie in models.py.

from django.db import models 
from wagtail.wagtailsnippets.models import register_snippet 

@register_snippet 
class Foobar(models.Model): 
    foo = models.CharField(max_length=3) 

Wenn Ihre App wächst, können Sie ein Paket anstelle eines Moduls verwenden. Erstellen Sie einen Ordner namens models und kopieren Sie den Inhalt von models.py in eine Datei mit dem Namen __init__.py. Erstellen Sie anschließend separate Module. Z.B. snippets.py innerhalb dieses neuen Ordner und importieren Sie sie innerhalb von __init__.py

Beispielcode:

models/__init__.py:

from .snippets import * 

models/snippets.py:

from django.db import models 
from wagtail.wagtailsnippets.models import register_snippet 

@register_snippet 
class Foobar(models.Model): 
    foo = models.CharField(max_length=3) 
Verwandte Themen