Package dependencies¶
This is a quick overview of all used Django packages:
![digraph G {
fontname = "Bitstream Vera Sans"
fontsize = 8
node [
fontname = "Bitstream Vera Sans"
fontsize = 8
shape = "record"
style = "filled"
fillcolor = "gray80"
]
edge [
fontname = "Bitstream Vera Sans"
fontsize = 8
]
subgraph clusterFluentPages {
label = "This package"
fluent_pages [
label = "django-fluent-pages"
]
subgraph clusterPagetypes {
label = "fluent_pages.pagetypes"
fluentpage [
label = "fluentpage"
]
flatpage [
label = "flatpage"
]
redirectnode [
label = "redirectnode"
]
textfile [
label = "textfile"
]
}
}
any_urlfield [
label = "django-any-urlfield"
]
django_wysiwyg [
label = "django-wysiwyg"
]
fluent_contents [
label = "django-fluent-contents"
]
fluent_utils [
label = "django-fluent-utils (internal)"
]
django_polymorphic [
label = "django-polymorphic"
]
django_mptt [
label = "django-mptt"
]
django_parler [
label = "django-parler"
]
django_polymorphic_tree [
label = "django-polymorphic-tree"
]
fluentpage -> fluent_contents
flatpage -> django_wysiwyg
redirectnode -> any_urlfield [style=dashed]
fluent_utils -> any_urlfield [style=dashed]
fluent_pages -> django_polymorphic_tree [lhead=clusterFluentPages]
fluent_pages -> django_parler
fluent_pages -> fluent_utils
django_polymorphic_tree -> django_polymorphic
django_polymorphic_tree -> django_mptt
}](_images/graphviz-3da9c67420d7a8b797a23b88c9c1791278fe9dee.png)
The used packages are:
- django-any-urlfield:
- An URL field which can also point to an internal Django model.
- django-fluent-contents:
- The widget engine for flexible block positions.
- django-fluent-utils:
- Internal utilities for code sharing between django-fluent modules.
- django-mptt:
The structure to store tree data in the database.
Note that django-fluent-pages doesn’t use a 100% pure MPTT tree, as it also stores a
parent_id
and_cached_url
field in the database. These fields are added for performance reasons, to quickly resolve parents, children and pages by URL.- django-parler:
- Translation support for all models.
- django-polymorphic:
- Polymorphic inheritance for Django models, it lets queries return the derived models by default.
- django-polymorphic-tree
- The tree logic, where each node can be a different model type.
- django-wysiwyg:
- A flexible WYSIWYG field, which supports various editors.