Sun 10 Feb 2008
Ein kleiner Artikel darüber, wie kann man auf die Daten direkt, ohne Anfrage zum Web Server, zugreifen z.B. für das Bekommen und Aktualisierung der Daten per cron.
So ist das von cron gestartete Script zu benutzen für z.B. das ständige Aufschreiben irgendwelcher Daten in File:
Man kann auch folgend benutzen:
Obwohl die obere Variante finde ich halt einfach viel bequemer und praktischer.
So ist das von cron gestartete Script zu benutzen für z.B. das ständige Aufschreiben irgendwelcher Daten in File:
*/1 * * * * www /usr/bin/python /srv/project/update.py 999 >>/tmp/datesDas hier ist das Script update.py, es muss im Projektordner zusammen mit settings.py angelegt sein:
#!/usr/bin/env python import sys,settings from django.core.management import setup_environ setup_environ(settings) from YourApp.models import MyModel try: print MyModel.objects.get(id=sys.argv[1]) except Exception: print "error"Hier ist das Prinzip des Bekommens der Daten ohne den Web Server anzufragen, man muss nur die Einstellungen des Django Projekts aktivieren.
Man kann auch folgend benutzen:
*/1 * * * * www /usr/bin/wget -O /dev/nullDazu ist noch eine Code in views.py zuzufügen. Von Nachteil ist dabei jedoch unnötiger Wege durch den Web Server.
http://www.server.com/update/?999 >>/tmp/dates
Obwohl die obere Variante finde ich halt einfach viel bequemer und praktischer.
English
Deutsch
Русский
(3 votes, average: 4 out of 5)
February 11th, 2008 at 6:13 p.m.
"Вот сам скрипт update.py, он должен находиться в папке проекта вместе с settings.py"
Необязательно. Достаточно указать путь к settings, чтобы можно было его подключить.
February 11th, 2008 at 7:37 p.m.
А еще можно свою команду для manage.py написать
February 12th, 2008 at 3:29 p.m.
Спасибо за предложения.
Насчет папки согласен, можно и path подключить, я всего-лишь показал один из возможных вариантов реализации.