txt Dateien im WebBrowser bearbeiten

Django, Flask, Bottle, WSGI, CGI…
Antworten
erdmulch
User
Beiträge: 230
Registriert: Samstag 17. Juli 2010, 19:50

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?
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Klar geht das.

Schon das Django Tutorial durchgearbeitet?

Frage wäre, warum eine .txt Datei? Wo kommt die her? Warum kein DB Eintrag?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
erdmulch
User
Beiträge: 230
Registriert: Samstag 17. Juli 2010, 19:50

Ja, ich habe das Django Tutorial durchgelesen.
Ich will auf meinem Ubuntu System auf welchem ein Apache läuft einige config dateien über den Browser anpassen
kannst du mir sagen nach was ich suche muss?

vielen Dank
Benutzeravatar
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.

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
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.

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
erdmulch
User
Beiträge: 230
Registriert: Samstag 17. Juli 2010, 19:50

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.
Benutzeravatar
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...

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Malta
User
Beiträge: 83
Registriert: Samstag 8. Januar 2011, 23:51

Vielleicht meinst du so ein Programm:
http://nodecode.de/etherpad
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

erdmulch hat geschrieben:Ich hatte folgende Idee, leider wird da nichts im Browser angezeigt, sondern es erscheint ein leeres Feld

Code: Alles auswählen

[...]
    <textarea name="user_eingabe" cols="50" rows="10" src="C:\Dokumente und Einstellungen\Peter\Desktop\test.txt"></textarea>
[...]
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?
Benutzeravatar
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
Antworten