mirror of
https://expo.survex.com/repositories/expoweb/.git/
synced 2025-12-08 14:54:28 +00:00
add link to Reverse resolution of URLs - online edit of handbook/troggle/trogdjango.html
This commit is contained in:
@@ -51,16 +51,18 @@ plugin if it is really, really necessary and we have removed as many as we could
|
||||
we discovered that we weren't really using it and could work around it, so we are not planning on reinstalling staticfiles.
|
||||
|
||||
<h4 id="4layer">Why we still use django</h4>
|
||||
|
||||
<p>Well we <a href="trog2030.html">might not use django indefinitely</a>, but unlike many frameworks the necessary functions are separately
|
||||
replaceable. So this gives us an evolution path. We can incrementally reduce the amount of django we use, replacing it with our own simpler
|
||||
python that does only what we need.
|
||||
<p>The separate functions within the framework form a "stack". These functions exist in all web application frameworks but in Django they are <a
|
||||
href="https://docs.djangoproject.com/en/dev/misc/design-philosophies/">loosely coupled</a>.
|
||||
|
||||
<p id="stack"><b>The stack is:</b>
|
||||
<ol>
|
||||
<li>SQL database: <a href="https://docs.djangoproject.com/en/dev/topics/db/">mapping</a> to/from python objects and indexing/access routines for all the entries (sqlite, MySQL, MariaDB, postgres all work). This is where the multi-user synchronisation happens too.
|
||||
<li>request/response (<a href="https://docs.djangoproject.com/en/dev/ref/request-response/">http GET/POST</a>) including <a href="https://docs.djangoproject.com/en/dev/topics/auth/default/#auth-web-requests">access control</a> and <a href="https://www.moesif.com/blog/engineering/middleware/What-Is-HTTP-Middleware/">security middleware</a>. We could never keep up with web security if we didn't use a well-supported system for this.
|
||||
<li><a href="https://docs.djangoproject.com/en/dev/topics/http/urls/">URL mapping/dispatch</a> which matches a requested URL with a chunk of python code, and vice versa (declarative and bidrectional). "Cool URIs don't change."
|
||||
<li><a href="https://docs.djangoproject.com/en/dev/topics/http/urls/">URL mapping/dispatch</a> which matches a requested URL with a chunk of python code, and vice versa (declarative and <a href="https://docs.djangoproject.com/en/5.1/topics/http/urls/#reverse-resolution-of-urls">bidrectional</a>). "Cool URIs don't change."
|
||||
<li><a href="https://docs.djangoproject.com/en/dev/topics/templates/">templates</a> which format the results of data queries into HTML pages or JSON data exports. [2025 article on <a href="https://blog.jetbrains.com/pycharm/2025/02/the-ultimate-guide-to-django-templates/">Django templates</a>]
|
||||
</ol>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user