2016-06-24 14 views
0

Aus Gründen, die ich nicht kontrollieren konnte, wurden 2 Django-Projekte auf zwei verschiedenen AWS-Servern platziert, die beide die gleiche RDS AWS-Datenbank verwenden.Verbinden von 2 Django-Projekten auf verschiedenen Servern

Ich möchte, dass Projekt B auf die Modelle (Tabellen) zugreifen und diese bearbeiten kann, die in Projekt A verwendet werden (wo sie ursprünglich erstellt wurden).

Ist das überhaupt möglich? Importieren Sie das Projekt Eine App über das Netzwerk über die PYTHONPATH in irgendeiner Weise?

+0

Sie könnten es nicht einfach über einen Server importieren und Änderungen vornehmen, während es ausgeführt wird, müssten Sie A ändern, um eine Verbindung von B zu ermöglichen, um Manipulationen vorzunehmen. –

+0

@ TadhgMcDonald-Jensen Könntest du näher erläutern, wie das geschehen würde? – qarthandso

+0

Ich weiß nicht genug darüber, um eine halbwegs vernünftige Antwort zu veröffentlichen, aber ich glaube, die relevante Technologie ist ['RPC'] (https: //en.wikipedia. org/wiki/Remote_procedure_call), so dass Sie grundsätzlich Code von B senden können, der auf A. –

Antwort

1

Sorry ... mir fehlt der Ruf zu kommentieren sonst hätte ich nichts gepostet.

Ich denke, in dieser Situation müssen Sie möglicherweise die Django REST Framework verwenden.

Auf diese Weise können Sie einfach die Projekte autorisieren, miteinander zu sprechen, DRF kommt mit httpbasic eingebaut, aber Sie sollten wahrscheinlich versuchen, eine Art von Hash-Token als Teil der Auth einzurichten.

Ich habe kürzlich this guide gefunden ... obwohl es spezifisch für mobile Geräte ist, ist es wahrscheinlich eine der besseren Komplettlösungen des DRF.

+0

sehr cool ist, also schlagen Sie vor, dass Projekt B Projekt A nach JSON-Darstellung des Modells fragt und es auf diese Weise verwendet? – qarthandso

+0

Ja, das wäre wahrscheinlich die einfachste Art, das zu tun. Ich bin gerade dabei, eine ähnliche Implementierung zu beginnen, also hoffentlich jemand, der mehr Erfahrung mit dem API-Zeug hat. Der einzige Nachteil ist, dass das Serialisieren von Django-Modellen manchmal saugt (komplexere Modelle werden nicht einfach serialisiert) für JSON-Passing), aber abhängig von Ihren Modellen könnte es kein Problem sein. – rob

Verwandte Themen