Django RestFramework Elasti c Поиск: Timeline API - PullRequest
0 голосов
/ 07 марта 2020

screenshot of timeline

Я использую django restframework вместе с elasti c search для разработки внутреннего приложения для мобильного приложения. Мне нужно разработать API временной шкалы, который будет загружать временную шкалу сообщений от других пользователей, за которыми следит пользователь. Наряду с другими постами, которые могут прокомментировать люди, за которыми они следят.

Каков наилучший способ реализации этой проблемы?

1 Ответ

0 голосов
/ 17 марта 2020

как это

@some_vf
def someview(req, **kw):
    query = {
        "_source": ["field1", "field2", "field3"],
        "query": {
            "must": [
                {"term": {"username": "zhangsan"}}
            ],
            "should": [
                {"term": {"userid": 1}},
                {"term": {"followed": "something"}}  # other filter with zhangsan
            ]
        },
        "sort": [{"timestamp": {"order": "asc"}}],
        "size": size,
        "from": from_
    }
    es = Elasticsearch()
    data = elasticsearch.helpers.scan(es, ["user_docs_index", "related_posts_index", "followed_some_index"], "_doc")
    # or do your serializers
    return Response(data)
...