Compare commits

..
20 Commits
Author SHA1 Message Date
retoor 3e91e33d40 Environment added. 2025-02-10 00:31:07 +01:00
retoor 3a07ed173e Environment added. 2025-02-10 00:28:57 +01:00
retoor 2c87abeeda Environment added. 2025-02-10 00:17:56 +01:00
retoor 6a6ba976b3 A lot of bugfix. 2025-01-28 00:42:24 +01:00
retoor 66147497a8 Content type. 2025-01-27 23:49:11 +01:00
retoor be8519d8b7 Content type. 2025-01-27 23:45:30 +01:00
retoor 4fdfd14099 Content type. 2025-01-27 23:41:49 +01:00
retoor 745d076fc8 Content type. 2025-01-27 23:31:08 +01:00
retoor 1447a16bd1 Content type. 2025-01-27 19:48:29 +01:00
retoor d7ae81ef50 Fixed typo. 2025-01-27 19:45:55 +01:00
retoor 169480e56c Fixed typo. 2025-01-27 19:44:10 +01:00
retoor a9dd0ee39f Fixed typo. 2025-01-27 19:42:04 +01:00
retoor e2d471e803 Fixed typo. 2025-01-27 19:40:33 +01:00
retoor 1d7c2ce6fa Fix run command. 2025-01-27 19:39:34 +01:00
retoor d31ba26f46 Fix run command. 2025-01-27 19:33:54 +01:00
retoor 9f2fd2c0b2 Fix run command. 2025-01-27 19:33:32 +01:00
retoor 0dc2120cac Fix run command. 2025-01-27 19:32:42 +01:00
retoor 542ba6a3fc Upgrade. 2025-01-27 19:27:26 +01:00
retoor 2c448a951c Readme update. 2025-01-27 18:29:53 +01:00
retoor 17820885d6 first commit 2025-01-27 18:25:40 +01:00
2 changed files with 14 additions and 14 deletions
+8 -12
View File
@@ -54,18 +54,14 @@ class TemplateView(BaseView):
context = {}
context['request'] = self.request
context['post'] = await self.request.post()
context["template"] = pathlib.Path(path)
if not context['post']:
context['post'] = None
try:
context['json'] = await self.request.json()
except:
context['json'] = None
pass
self.request.app.jinja2_env.globals["request"] = self.request
self.request.app.jinja2_env.globals["context"] = context
self.request.app.jinja2_env.globals["template"] = context["template"]
try:
context['json'] = await self.request.json()
except:
context['json'] = None
pass
if str(path).endswith(".md"):
renderer = MarkdownRenderer(self.request.app, path)
@@ -87,6 +83,8 @@ class TemplateView(BaseView):
"<body>{% markdown %}"+content+"{% endmarkdown %}</body>",
"</html>"
])
self.request.app.jinja2_env["request"] = self.request
aelf.request.app.jinja2_env["context"] = context
with open(".temp.html", "w+") as f:
f.write(markdown_default_page)
content = aiohttp_jinja2.render_string(".temp.html",self.request,context=context)
@@ -125,8 +123,6 @@ class Dreamii(BaseApplication):
self.router.add_view("/{tail:.*}", TemplateView)
self.jinja2_env.enable_async = False
self.jinja2_env.globals["app"] = self
self.jinja2_env.globals["request"] = None
self.jinja2_env.globals["context"] = {}
self.jinja2_env.add_extension(MarkdownExtension)
self.jinja2_env.add_extension(PythonExtension)
+6 -2
View File
@@ -22,6 +22,10 @@
from types import SimpleNamespace
from mistune import Markdown
from pygments import highlight
from pygments.formatters import html
from pygments.lexers import get_lexer_by_name
from jinja2 import TemplateSyntaxError, nodes
from jinja2.ext import Extension
from jinja2.nodes import Const
@@ -93,6 +97,7 @@ class PythonExtension(Extension):
]
)
user_source = str(caller()).strip("\n").strip(" ")
print(user_source)
source = "\n".join([base_source, user_source])
import sys
import io
@@ -121,13 +126,12 @@ class PythonExtension(Extension):
return html.escape(result.stdout + result.stderr) if stderr else result.stdout
environment = self.environment
request = self.environment.globals["request"]
context = self.environment.globals["context"]
template = self.environment.globals["template"]
db = self.app.db
app = self.app
dreamii = self.app
#context = self.context
exec(base_source)
exec(user_source)
result = sys.stdout.getvalue()