faccio fatica a implementare qualcosa di simile a "categorie nidificate":categorie nidificate/InlinePanel (s) in cutrettola
PageA:
- Cat1
- SubCat1
- SubCat2
- ...
- Cat2
- SubCat1
- ...
Tutte le categorie e sottocategorie devono essere ordinabili e modificabili da un editore.
La mia ipotesi era qualcosa di simile:
class CategoryTestPage(Page):
content_panels = Page.content_panels + [
InlinePanel('categories')
]
class Category(Orderable,ClusterableModel,models.Model):
page = ParentalKey(CategoryTestPage, related_name='category')
category = models.CharField(max_length=250)
def __str__(self):
return "%d %s" % (self.id, self.category)
panels = [
FieldPanel('category'),
InlinePanel('subcategory')
]
class SubCategory(Orderable,models.Model):
category = ParentalKey(ProjektOrdnung, related_name='subcategory')
subcategory = models.CharField(max_length=250)
def __str__(self):
return "%d %s" % (self.id, self.subcategory)
panels = [
FieldPanel('subcategory')
]
Ma questo si traduce in 'CategoryForm' object has no attribute 'formsets'
. Sembra nested InlinePanel
s sono il problema?
Inoltre ho bisogno di questo "tassonomia gerarchica" assegnare per alcune di queste categorie/sottocategorie ad altre pagine della:
PageB:
- has Cat1
- has SubCa2
- ...
... che assomiglia molto a tag gerarchici ...
Tutte le idee come implementare questo o cosa non va nella mia implementazione?
Cordiali saluti, tombreit
PS: Sono su ballerina 1.2rc1
Ma penso che questo richieda che lo snippet venga creato per primo. C'è un modo per fare la creazione della categoria anche in linea? – JhovaniC
L'ho provato in questo modo, ma come notato da @ianprice, la parte dell'interfaccia lascia molto a desiderare. C'è un repository da torchbox (https://github.com/torchbox/wagtail-categories), ma sfortunatamente senza alcun progresso. Un altro approccio potrebbe essere http://wagtailplus.readthedocs.io/en/latest/relationships/ (non ancora provato). – tombreit
Sembra esserci un approccio per categorie incoraggiato dagli autori di updot upstream sulla strada: https://github.com/wagtail/wagtail/pull/3305, dovrebbe essere disponibile per wagtail> = 1.9. – tombreit