2015-08-19 11 views
6

Ha senso utilizzare il framework Django per sviluppare lo strumento Command Line Interface? Nel mio caso non ci sarà alcuna interfaccia grafica. Quali benefici posso ottenere usando? O forse conosci qualche altro framework utile per la CLI? Mi piacerebbe mettere un accento sul fare richieste HTTP con API REST.Uso di django per lo strumento CLI

AGGIORNAMENTO: Grazie ragazzi! Mi piacerebbe piuttosto usare l'API REST piuttosto che crearlo nel mio strumento.

+1

piramide è una struttura valida e flessibile, in cui è possibile sviluppare facilmente un'API RESTful. – Renier

risposta

8

Mentre django è principalmente per applicazioni Web, ha un ORM potente e facile da usare che può essere utilizzato anche per le app CLI. Per utilizzare lo script django come script autonomo senza un server web, è sufficiente aggiungere quanto segue all'inizio del file.

import os, sys 
if __name__ == '__main__': 
    # Setup environ 
    sys.path.append(os.getcwd()) 
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "main.settings") 

    # Setup django 
    import django 
    django.setup() 

    # now you can import your ORM models 
+1

Dovrebbe anche aver aggiunto che tutte le altre importazioni appaiono sotto questa sezione – e4c5

+0

Grazie! mi aiuta molto. –

1

Dipende praticamente dal tuo caso d'uso. Se vuoi avere a che fare con l'interazione basata sulle richieste tramite riga di comando con il tuo database, allora è un buon parere per costruire i tuoi servizi restful e poi usare strumenti da riga di comando come httpie per colpire le tue API e ottenere una risposta. Questa è la tua esigenza Django Rest Framework ti fornirà servizi rilassanti ora è come vuoi utilizzarlo.

Problemi correlati