В 2023 году мы с коллегой сделали доклад на DotNext по DDD и архитектуре систем. И там, в числе прочего, показали, что устройство сложного проекта, спроектированного по определённым правилам, может иметь фрактальную структуру. Но мысль эту особо не развивали.
В 2024 году Влад Хононов — автор одной из самых известных книг по DDD — сделал доклад на DotNext по теме «Фрактальная геометрия в проектировании систем». Разумеется, он никаким образом на нашу идею не опирался, а работал над своей системой уже несколько лет к моменту доклада. У него там прям интересные научные обоснования, более серьёзный теоретический фундамент с введением новых понятий и принципов. Но факт близости хода мысли приятен. Типа, мы с коллегой делали систему, которая показала те же свойства, что и системы крутого эксперта в архитектуре.
Прям рекомендую доклад по второй ссылке всем, кто работает в компаниях, где по какому-то странному недосмотру есть архитектура, борьба с техдолгом и попытки не допустить превращения кода в лапшу с высоким зацеплением.
#dev@clockstackwheels
https://github.com/aio-libs/aiohttp-jinja2
Before template rendering you have to setup #jinja2 environment first:
After that you may to use template engine in your #web-handlers. The most convenient way is to decorate a web-handler.
Using the function based web handlers:
http://jinja.pocoo.org/docs/2.9/
#Jinja2 is a modern and designer-friendly templating language for Python, modelled after Django’s templates. It is fast, widely used and secure with the optional sandboxed template execution environment:
#web
https://stackoverflow.com/questions/30288351/how-to-setup-django-1-8-to-use-jinja2
The #Jinja template folder for app dirs defaults to #jinja2 not the standard templates folder.
So try the following directory structure and #Django will locate your Jinja #templates:
mysite
mysite
myapp
jinja2
myapp
index.html
manage.py
And instead of: return render(request, 'myapp/index.html') you should write: return render(request, 'index.html')
https://alysivji.github.io/flask-part1-generating-html-pages-with-mongoengine-jinja2.html
Generating HTML Pages from #MongoDB with #MongoEngine and #Jinja2 (Flask Part 1)
Summary
Overview of MongoDB
Discussion of Object-Relational Mapping (#ORM)
Use MongoEngine to get items out of MongoDB
Render #HTML pages using Jinja2
Interact with #REST API to send emails with #Requests
#Mako is a #template library written in Python. It provides a familiar, non-XML syntax which compiles into Python modules for maximum performance. Mako's syntax and #API borrows from the best ideas of many others, including #Django and #Jinja2 templates, #Cheetah, #Myghty, and #Genshi. Conceptually, Mako is an embedded Python (i.e. Python Server Page) language, which refines the familiar ideas of componentized layout and inheritance to produce one of the most straightforward and flexible models available, while also maintaining close ties to Python calling and scoping semantics.
http://www.makotemplates.org/