簡體   English   中英

在另一個Python腳本中使用POST方法創建Django模型實例

[英]Create Django Model Instance using POST method in another Python Script

因此,我有一個帶有某些模型的django應用,可以通過管理員以及面向客戶端的站點(例如添加實例等)進行操作。但是,我想嘗試一些與此不同的方法。 我有一個Python腳本,該腳本基於這些相同的模型使用POST和JSON對象,並且我希望能夠運行它,通過端口連接到django應用服務器,並創建模型的新實例(基本上無需使用Admin或我的客戶頁面)。 有什么想法可以解決嗎?

如果腳本的作用很簡單,那么僅創建一個接收JSON,對其進行處理並返回JsonResponse的視圖可能是最簡單的。

例如

def create_object(request):
    if request.method == 'POST':
        data = json.loads(request.body)
        # Do something with the data - e.g. create a model instance
        MyModel.objects.create(**data)
        return JsonResponse({'status': 'created'})

另外,如果腳本執行更復雜的操作,或者打算在將來進行擴展,則最好使用RESTful API(例如Django Rest Framework)通過REST API公開網站。

使用Django Rest Framework,您可以使用ModelViewSetModelSerializer之類的組件在模型周圍快速構建基於CRUD的API,並以最少的代碼在REST上公開它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM