Qual è il controller in Django MVC?

2

Imparare Django MVC e il modo in cui ho pensato è:

Modelli sono le tabelle del database rappresentate in Django come classi Python.
Views sono l'HTML restituito dalla funzione in views.py.
I controller sono le stesse funzioni stesse in views.py richiamate da una richiesta HTTP.

Comunque ho letto su Wikipedia (al momento della scrittura):

... a regular-expression-based URL dispatcher ("Controller").

Avrei pensato che la mappatura degli URL funzionasse come routing, non il controller. Ma forse mi sbaglio - immagino di avere le mie idee perché ASP MVC le funzioni che gestiscono le richieste sono contenute in classi chiamate Contoller ...

    
posta markmnl 02.08.2014 - 12:18
fonte

1 risposta

6

I tuoi pensieri non sono sbagliati. Nei framework Web MVC, le persone parlano spesso di un controller di base che esegue il routing di una richiesta al controller effettivo che gestisce la richiesta.

Questo è avvenuto perché i framework web hanno generalmente un singolo punto in cui la richiesta viene ricevuta dall'applicazione e, in puro termini MVC, è qui che inizia il lavoro del Controller.

Il framework Django utilizza un modo non idiomatico di denominare le parti della triade MVC.

La mappatura tra i nomi di Django e la terminologia idiomatica è:

Idiomatic term | Django term | Meaning
Model          | Model       | Contains all the business logic. At the very least the database access logic
View           | Template    | Responsible for generating the HTML and other UI
Controller     | View        | Contains the logic to tie the other parts together and to generate a response to a user request
    
risposta data 02.08.2014 - 13:33
fonte

Leggi altre domande sui tag