Raumopol Webhosting Logo

Informationsportal: News, Fragen & Antworten und Hilfe

Django: django-admin

Das nachfolgende Beispiel zeigt, wie man django-admin-Befehle mit Hilfe einer .cgi-Datei ausführen kann.

Bitte daran denken, dass die Datei für den Dateibesitzer ausführbar sein muss!
Die Datei muss in dem Verzeichnis der Django-Installation abgelegt werden.

adm.cgi
#!/usr/local/bin/python
# -*- coding: iso-8859-1 -*-
import sys, subprocess, cgitb
sys.stderr = sys.stdout
cgitb.enable()
print 'Content-Type: text/html'
print '\n<pre>'
sys.stdout.flush()
env = dict(os.environ)
#env['PYTHONPATH'] = '/var/usersoftware/django-releases/1.5.1:' + env.get('PYTHONPATH', '')
subprocess.Popen(["python", "./manage.py", "syncdb", "--noinput"], stdout=sys.stdout, stderr=sys.stderr, env=env).communicate()
print '\n</pre>'

Die Datei kann dann einfach über den Browser aufgerufen werden. Der Befehl wird ausgeführt und das Ergebnis wird direkt ausgegeben.
Falls Sie eine bestimmte Django-Version benutzen, entfernen Sie das "#"-Zeichen vor "env[..] = .." und tragen Sie in dieser Zeile die richtige Version ein, indem Sie 1.5.1 mit der selben Version ersetzen, die auch in der FCGI-Datei des Projekts festgelegt ist.


Raumopol Technologie