Hallo,
Ich will eine txt Datei in einem Browser bearbeiten und dann wieder speichern.
Ist sowas mit Django möglich? wenn ja hat jemand damit Erfahrung oder kann mir jemand sagen was ich alles brauche?
txt Dateien im WebBrowser bearbeiten
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Das Rechtesystem dürfte, zu Recht, da ein Strich durch die Rechnung machen: Wichtige Config-Dateien sollten aus Prinzip nicht vom Server Prozess änderbar sein. Kann man alles anpassen, aber Sinnvoll ist das auf keinen Fall
Klinke dich doch per SSH rein und nutzte mc bzw. mcedit.
Klinke dich doch per SSH rein und nutzte mc bzw. mcedit.
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Ansonsten sind da nur Grundlagen nötig: Datei öffnen und Inhalt einer Form verfüttern. Nach absenden den Dateiinhalt ändern.
Kommen aber schnell Detailfragen: Wie Datei/Pfad auswählen. Was ist mit encodieren der Datei/Browser. Wie konkurrierendes manipulieren verhindern. Generell, wie Zugriff regeln. Was ist mit Backup? Und noch einige Fragen, die mir spontan nicht einfallen...
Im Grunde läuft das dann evtl. auf einen Dateimanager mit Editierfunktion raus. Sollte dann aber alles auch entsprechend abgesichert sein.
Kommen aber schnell Detailfragen: Wie Datei/Pfad auswählen. Was ist mit encodieren der Datei/Browser. Wie konkurrierendes manipulieren verhindern. Generell, wie Zugriff regeln. Was ist mit Backup? Und noch einige Fragen, die mir spontan nicht einfallen...
Im Grunde läuft das dann evtl. auf einen Dateimanager mit Editierfunktion raus. Sollte dann aber alles auch entsprechend abgesichert sein.
Ich hatte folgende Idee, leider wird da nichts im Browser angezeigt, sondern es erscheint ein leeres Feld
Code: Alles auswählen
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Mehrzeilige Eingabebereiche definieren</title>
</head>
<body>
<h1>Ganz spontan</h1>
<form action="textarea.htm">
<p>Welche HTML-Elemente fallen Ihnen ein, und was bewirken sie:<br>
<textarea name="user_eingabe" cols="50" rows="10" src="C:\Dokumente und Einstellungen\Peter\Desktop\test.txt"></textarea>
</p>
</form>
</body>
</html>
Zuletzt geändert von Anonymous am Montag 24. November 2014, 20:14, insgesamt 1-mal geändert.
Grund: Quelltext in Code-Tags gesetzt.
Grund: Quelltext in Code-Tags gesetzt.
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Das wäre auch übel, wenn es gehen würde
Du liest die Datei im Python Skript und nicht in HTML, übergibst es dann der django form, als Inhalt für die textarea...
btw. für HTML gibt es hier im Forum auch einen Tag: Klick mal auf die Drop-Down-Liste, neben "Code" Button
EDIT: Ach, gibt auch das "FieldFile": https://docs.djangoproject.com/en/1.6/r ... .FieldFile bzw. das "FilePathField": https://docs.djangoproject.com/en/1.6/r ... epathfield
Aber wie gesagt, in der Praxis ist das eh nix. Lokal mit dem Test-Server wird es noch funktionieren...
Du liest die Datei im Python Skript und nicht in HTML, übergibst es dann der django form, als Inhalt für die textarea...
btw. für HTML gibt es hier im Forum auch einen Tag: Klick mal auf die Drop-Down-Liste, neben "Code" Button
EDIT: Ach, gibt auch das "FieldFile": https://docs.djangoproject.com/en/1.6/r ... .FieldFile bzw. das "FilePathField": https://docs.djangoproject.com/en/1.6/r ... epathfield
Aber wie gesagt, in der Praxis ist das eh nix. Lokal mit dem Test-Server wird es noch funktionieren...
Vielleicht meinst du so ein Programm:
http://nodecode.de/etherpad
http://nodecode.de/etherpad
Der Text gehört ja auch zwischen das öffnende und das schließende textarea-Tag. Dort würdest du eine Variable in Django-Template Syntax angeben (z.b {{ text }}) und diese aus deiner View heraus füllen. Das src-Attribut ist natürlich Humbug, wie kommst du darauf dass es so etwas gibt?erdmulch hat geschrieben:Ich hatte folgende Idee, leider wird da nichts im Browser angezeigt, sondern es erscheint ein leeres FeldCode: Alles auswählen
[...] <textarea name="user_eingabe" cols="50" rows="10" src="C:\Dokumente und Einstellungen\Peter\Desktop\test.txt"></textarea> [...]
- noisefloor
- User
- Beiträge: 3856
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
damit das rein technisch überhaupt funktioniert, müsste Django dann mit Root-Rechten laufen, sonst kannst du die Dateien unter /etc nicht speichern. Was aus sicherheitsaspekten keine gute Idee ist.
Und dann läuft Django am besten via mod_wsgi unter Apache. Dann funktioniert Django wenigstens auch nicht mehr, wenn du den Apache-Server durch eine falsche config-Datei abschießt *SCNR*
Gruß, noisefloor
damit das rein technisch überhaupt funktioniert, müsste Django dann mit Root-Rechten laufen, sonst kannst du die Dateien unter /etc nicht speichern. Was aus sicherheitsaspekten keine gute Idee ist.
Und dann läuft Django am besten via mod_wsgi unter Apache. Dann funktioniert Django wenigstens auch nicht mehr, wenn du den Apache-Server durch eine falsche config-Datei abschießt *SCNR*
Gruß, noisefloor