feincms-článků je rozšiřitelné FeinCMS obsah článku systém pro Django, jehož účelem je poskytnout jednoduchý článek model, který je rozšiřitelný & nbsp; koncepce (a některé kód) je převzato z [FeinCMS] (https: //. GitHub. com / matthiask / feincms) modelu Page.
Instalace a nastavení
Za prvé, ten balíček.
Pip nainstalovat feincms-články
Budete tedy muset přidat `articles` do souboru` nastavení INSTALLED_APPS`.
Před tím, než se `manage.py syncdb`, možná budete chtít přidat nějaké rozšíření článku. Ve výchozím nastavení je modul články má základní sadu polí obsahu, jako je název, shrnutí a obsah.
Rozšíření
Rozšíření jsou způsob, jak přidat často používaných funkčnost článek modelu. Rozšíření jsou standardní modulů Pythonu s `zaregistrovat ()` metody, které budou vyzvány registraci rozšíření. `Registr ()` metoda přijímá `Article` samotné třídy a třídy modelu admin` ArticleAdmin` jako argumenty.
Rozšíření může být aktivován přidáním následujících na dně `models.py` souboru, které budou zpracovávány stejně:
od articles.models dovozu článku
Article.register_extensions ("articles.modules.category.extensions.category", "datepublisher", "značky", "náhled")
V případě, že rozšíření vyžaduje své vlastní modely (jako rozšíření kategorie), pak aplikace obsahuje také muset být přidány do souboru `INSTALLED_APPS` modely.
ContentTypes
Musíte vytvořit nějaký FeinCMS typy obsahu přidat do svého článku. Žádné modely jsou standardně vytvářeny, protože neexistuje žádný způsob, jak zrušit registraci modely. Rozumný výchozí by mohlo být vytvoření `ImageContent` a` RichTextContent` modelů; můžete to provést přidáním následujících řádků někam do svého projektu, například na dně `models.py` souboru, který budou zpracovávány stejně:
od feincms.content.richtext.models import RichTextContent
od feincms.content.image.models dovozu ImageContent
od articles.models dovozu článku
Article.register_regions (("top", _ ("top obsah")), ("hlavní", _ ("Main region")),)
Article.create_content_type (RichTextContent)
Article.create_content_type (ImageContent, POSITION_CHOICES = (("blok", _ ("block")), ("odešel", _ ("levý")), ("právo", _ ("pravý")),))
Přidávání rozšíření
Chcete-li přidat rozšíření vytvořit python modul, který definuje funkci registru, který přijímá článek třídy a třídy ArticleAdmin jako argumenty a mění je podle potřeby.
Zde je rozšíření adresa (profily / rozšíření / tags.py):
def registrovat (CLS, admin_cls):
cls.add_to_class ("značky", TaggableManager (verbose_name = _ ("tagy"), prázdný = True))
cls.urlpatterns + = vzory ("taggit.views",
url (r '^ tags / (P [^ /] +) / $? "," tagged_object_list ", {" queryset ": cls.objects.active}, name =" article_tagged_list "),
)
pokud admin_cls:
pokud admin_cls.fieldsets:
admin_cls.fieldsets[0][1]['fields'].append('tags')
Requirements:
- Python
Komentáře nebyl nalezen