CRUDbyFTP
Verfasst: Samstag 27. Oktober 2007, 14:36
haubsachtlich fuer blogs, die nur so 3 mal am tag upgedated werden ist sql + cgi mehr als overkill.
ein HTTP server der nur statische dateien besitzt koennte informationen darueber enthalten wie etwas upgedatet wird und ein client tut das dan per ftp
hier ein pseude beispiel:
die eintraege aus der `db` werden jeweils in der `templ` eingetragen und schlieslich in der seite eingefuegt.
wenn der bloger also ein neuem eintrag schreiben will, muss er nur `db` aendern und wenn er alle seine blogs auf einmal aendern will aendert er seine `templ`
der eingefuegte script gibt folgenden output:
leider hab ich aber keine zeit das weiterzuschreiben.
langfristig koennte man aber sogar eine GUI zur bearbeitung von `db` basteln
cu
ein HTTP server der nur statische dateien besitzt koennte informationen darueber enthalten wie etwas upgedatet wird und ein client tut das dan per ftp
hier ein pseude beispiel:
Code: Alles auswählen
import re
db = '''
===
[title]
warum die banane krumm ist
[text]
weil niemand in dem urwald zug und sie wieder gerade bog
===
[title]in der schulle nichts neues[text]schon seit 40 jahren tun lehtr fdws bla bla bla blog blog bla....
'''
tmpl = """\
<p class="foobar">
title: %(title)s <br/>
text: %(text)s
</p>"""
html = """
<html>
<h3>willkommen auf meinem blog</h3>
<!--begin CRUDbyFTP-->
das wird beim update ueberschreiben
<!--end CRUDbyFTP-->
kein impressum
"""
def update(html, tmpl, db):
try:
return "%s%s%s" % (
html[:html.index('<!--begin CRUDbyFTP-->')+22],
'\n<!--this is betwen two entries-->\n'.join([tmpl % dict(re.findall('\[([^\[\]]+)\]([^[]+)', row)) for row in ('\n' + db + '\n').split('\n===\n') if row.strip('\n')]),
html[html.index('<!--end CRUDbyFTP-->'):])
except:
return '?' # hhaaaaahaaaa
print update(html, tmpl, db)
wenn der bloger also ein neuem eintrag schreiben will, muss er nur `db` aendern und wenn er alle seine blogs auf einmal aendern will aendert er seine `templ`
der eingefuegte script gibt folgenden output:
Code: Alles auswählen
<html>
<h3>willkommen auf meinem blog</h3>
<!--begin CRUDbyFTP--><p class="foobar">
title:
warum die banane krumm ist
<br/>
text:
weil niemand in dem urwald zug und sie wieder gerade bog
</p>
<!--this is betwen two entries-->
<p class="foobar">
title: in der schulle nichts neues <br/>
text: schon seit 40 jahren tun lehtr fdws bla bla bla blog blog bla....
</p><!--end CRUDbyFTP-->
kein impressum
leider hab ich aber keine zeit das weiterzuschreiben.
langfristig koennte man aber sogar eine GUI zur bearbeitung von `db` basteln
cu