Tastypie dostęp do pól z odziedziczonych modeli
Czy możliwe jest dołączanie pól do powiązanych modeli przy użyciu tastypie?
Zgodnie z moimi modelami poniżej: jeśli utrzymam jedną instancję VideoContent i jedną instancję TextContent w bazie danych, mogę odzyskać 2 obiekty z mojego zasobu treści, jednak żadne z dodatkowych pól nie jest dostępne.
Czy możliwe jest uwzględnienie pól z powiązanych modeli (w tym przypadku adresu URL wideo i treści tekstowej), a także uwzględnienie dodawania kolejnych typów treści w przyszłości bez konieczności przepisywania zasobu treści, czy też przychodzę do tego z zły kierunek?
Celem jest umożliwienie rozszerzenia tego o więcej ContentTypes bez konieczności wprowadzania zmian w zasobach Content (zakładając, że możliwe jest, aby działało w pierwszej kolejności)
Models.py:
class Content(models.Model):
parent = models.ForeignKey('Content', related_name='children', null=True, blank=True)
class TextContent(Content):
text = models.CharField(max_length=100)
class VideoContent(Content):
url = models.CharField(max_length=1000)
A potem moje zasoby:
class ContentResource(ModelResource):
children = fields.ToManyField('myapp.api.resources.ContentResource', 'children', null=True, full=True)
class Meta:
resource_name = 'content'
queryset = ContentResource.objects.all()
authorization = Authorization()
always_return_data = True