Django - как хранить разные методы разбора для разных форматов XML? - PullRequest
2 голосов
/ 06 октября 2019

У каждого пользователя разные csv/xml URL фида. Некоторые пользовательские каналы «стандартизированы», поэтому методы / сценарии синтаксического анализа могут быть общими. Но у некоторых пользователей есть очень уникальные форматы каналов, и мне нужно написать собственный сценарий.

Я пытаюсь найти способ хранения таких сценариев, поэтому либо я выбираю существующую технику синтаксического анализа внутри администратора, либо я пишу код и назначаю егок объекту.

Как бы вы это сделали?

Моя идея состоит в том, чтобы иметь папку с этими сценариями, и каждый объект имел бы FilePathField, чтобы я мог выбрать или создать новый сценарий. Есть ли другой способ?

class Feed(BaseTimeStampedModel):
    url ....
    name = models.CharField(max_length=64)
    template = models.FilePathField(path='feeds/parsers/', recursive=True, match='tparser__.*')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...