I know it’s probably obvious to some but in an MVC framework: the API can be the view.
That’s the whole point of separating the code into layers: so you can have multiple implementations existing concurrently at the same layer.
For example you can have models talking to Postgres and models taking to Elasticsearch or Cassandra. Or as everyone knows you can have different controllers which all talk to the same models or use the same view for output.
And if you were to abstract beyond the framework level, MVC can apply to software written in totally different languages.
I consider my code to be high level MVC and it’s controllers in Elixir talking to Java model layers and outputting JSON views, HTML, or even Excel files.
This is what I was thinking. Got Tornado plus a load of home grown code at my work. Compared to Django it's just so slow to develop on. There are so many well tested, documented features in Django, while we have some half arsed buggy implementation doing a poorer job.
That’s the whole point of separating the code into layers: so you can have multiple implementations existing concurrently at the same layer.
For example you can have models talking to Postgres and models taking to Elasticsearch or Cassandra. Or as everyone knows you can have different controllers which all talk to the same models or use the same view for output.
And if you were to abstract beyond the framework level, MVC can apply to software written in totally different languages.
I consider my code to be high level MVC and it’s controllers in Elixir talking to Java model layers and outputting JSON views, HTML, or even Excel files.