Bozza:Jam.py (informatica)
Template:Short description Template:Infobox software
Jam.py è un framework di sviluppo rapido di applicazioni WSGI "full stack" low-code / no-code gratuito e open source per il linguaggio di programmazione JavaScript e Python . [1]
Jam.py è una piattaforma di sviluppo low-code a pagina singola, guidata da eventi, per applicazioni web aziendali basate su database, basata sul principio DRY, con enfasi su CRUD . È progettato per creare automaticamente moduli Web JavaScript dalle tabelle del database sottostante, sebbene un modulo possa essere creato manualmente, se necessario.
Offre un server Web integrato, Aplication Builder e l'accesso al database per database di terze parti.
Introduzione e funzionalità
[modifica | modifica wikitesto]- Distribuzione singola che funziona sia con Python 2.6+ che con 3.x
- Può essere eseguito come server di sviluppo Web autonomo o essere utilizzato con qualsiasi server Web che supporti WSGI
- Generatore GUI integrato chiamato Application Builder
- Supporto per dati client JSON (per client REST e JavaScript )
- Supporto per i database più diffusi Oracle Database, Microsoft SQL Server, PostgreSQL, SQLite, MySQL, Firebird (server di database), SQLCipher [2] [Note 1]
- Meccanismi di autenticazione estensibili e controllo degli accessi basato sui ruoli
- Supporto all'internazionalizzazione
- jQuery per Ajax e interfaccia utente
- Linguaggio dei modelli
- Modelli di report basati su LibreOffice
- Caricamento file
Funzionalità distintive
[modifica | modifica wikitesto]Generatore di applicazioni integrato
[modifica | modifica wikitesto]Tutto lo sviluppo, la manutenzione e l'amministrazione remota del database possono essere eseguiti tramite l'interfaccia Builder. La caratteristica più distintiva è il modulo client e server. Il modulo server abilita il codice Python per la logica aziendale, eseguito come sessione lato server . Il modulo client esegue il codice JavaScript all'interno di un browser. È possibile scambiare dati tra i due. [3]
Application Builder è fortemente influenzato dal visual designer Delphi . [4]
Modulo client per la creazione di applicazioni
[modifica | modifica wikitesto]Il seguente codice JavaScript mostra una semplice pagina Web che visualizza " Hello World !" quando visitato:
task.create_menu($("#menu"), $("#content"), {
splash_screen: '<h1 class="text-center">Hello World!</h1>',
view_first: true
});
Il codice riportato sopra risiede nei moduli attività/client all'interno del generatore di applicazioni. È possibile accedere alla funzione attività a livello globale.
Modulo server per la creazione di applicazioni
[modifica | modifica wikitesto]Le librerie Python possono essere importate all'interno dei moduli Task/Server:
import smtplib
def send_email():
# code that sends email
Il codice sopra importa la libreria smtplib, che potrebbe essere utilizzata per inviare e-mail. È possibile accedere alle funzioni definite globalmente.
Migrazioni di database
[modifica | modifica wikitesto]Jam.py supporta la migrazione del database e l'importazione di dati da un database supportato a un altro. Il codice seguente nel modulo Attività/Server importerà i dati da SQLite al database dell'applicazione:
from jam.db.db_modules import SQLITE
def on_created(task):
task.copy_database(SQLITE, 'demo.sqlite')
Limitazioni:
- Il database SQLite non può essere importato nel database dell'applicazione che dispone di chiavi esterne . [5]
PythonAnywhere
[modifica | modifica wikitesto]PythonAnywhere è supportata la distribuzione di Python 3.x [Note 2]
Appunti
[modifica | modifica wikitesto]Riferimenti
[modifica | modifica wikitesto]Guarda anche
[modifica | modifica wikitesto]Template:Python (programming language)
Template:Python web frameworks
link esterno
[modifica | modifica wikitesto]
Errore nelle note: Sono presenti dei marcatori <ref>
per un gruppo chiamato "Note" ma non è stato trovato alcun marcatore <references group="Note"/>
corrispondente