• Как удалить ISPManager?

    Добавлю к уже сказанному ещё одну деталь, которую обнаружил сегодня при удалении ISP Manager. Удалить ссылки на /usr/local/ispmgr/* из конфигурации Apaсhe может оказаться мало. Строки примерно такого же вида обнаружились в конфигурации Nginx:
    include /usr/local/ispmgr/etc/nginx.inc;
    include /usr/local/ispmgr/etc/nginx.domain;
    Как известно, ISP Manager склеивает конфигурацию всех созданных виртуальных хостов в один главный файл /etc/nginx/nginx.conf. Вот там и нужно искать упомянутые строки. Причём первую он добавляет к каждому виртуальному хосту.
    Чтобы после удаление ISP Manager не было проблем, эти строки тоже нужно убрать из /etc/nginx/nginx.conf.
    Ответ написан
    Комментировать
  • Django Rest Framework как вернуть в ответе вложенную сущность из другой базы данных?

    Простите, я не тестировал то, что сейчас напишу, но почему бы Вам не попробовать следующее. Поскольку Django позволяет работать с несколькими базами данных одновременно, как описано здесь: https://docs.djangoproject.com/en/1.10/topics/db/m..., т.е. к примеру, вот так:
    Fields.objects.using('fields_db').all()
    FieldType.objects.using('field_types_db').all()

    То Вы можете сделать сериалайзер для FeildType и указать к нему в качестве queryset
    class FieldTypeSerializer(serializer.ModelSerializer):
        queryset = FieldType.objects.using('field_types_db').all()

    Соответственно, для сущности Field сериалайзер будет выглядеть примерно вот так:
    class FieldSerializer(serializers.ModelSerializer):
        field_type = FieldTypeSerializer()

    Можно обойтись и без использования queryset.using(), сделав так, чтобы модель всегда была привязана к другой базе. Подробности читайте по ссылке выше.

    UPD:
    Можно попробовать не привязывать сериалайзер к модели
    # наследование от serizliaers.Serializer вместо serializers.ModelSerializer
    class FieldSerializer(serializers.Serializer):
        id = serializers.IntegerField()
        name = serializers.CharField()
        field_type = FieldTypeSerializer()

    Но в этом случае нужно будет подумать где и как передать ему данные от моделей.
    Ответ написан