Die Suche ergab 35 Treffer

von filchos
Sonntag 30. August 2009, 22:11
Forum: Netzwerkprogrammierung
Thema: Django: Referentielle Integrität ändern
Antworten: 3
Zugriffe: 1189

Hallo apollo13,

schade – aber Danke für Deine Antwort.

Grüße,
Olaf
von filchos
Dienstag 25. August 2009, 12:54
Forum: Netzwerkprogrammierung
Thema: Django: Referentielle Integrität ändern
Antworten: 3
Zugriffe: 1189

Hallo,

mein erster Workaround nach http://fragmentsofcode.wordpress.com/2009/03/06/django-gotcha-related-objects-deleted-by-default/ :

In der User-Klasse:
def delete(self):
User.objects.filter(promoter=self).update(promoter=None)
super(User, self).delete()

Aber so wirklich schön finde ich es ...
von filchos
Dienstag 25. August 2009, 12:36
Forum: Netzwerkprogrammierung
Thema: Django: Referentielle Integrität ändern
Antworten: 3
Zugriffe: 1189

Django: Referentielle Integrität ändern

Hallo,

ich benutze Django und MySQL mit InnoDB.

In einer Tabelle `user` gibt es ein Feld `promoter_id`, welches wieder auf `user`verweist. Im Modell steht:

promoter = models.ForeignKey('self', blank=True, null=True, default=None)

Ich möchte hier allerdings die Art der Referentiellen Integrität ...
von filchos
Freitag 17. Juli 2009, 22:49
Forum: Ideen
Thema: Primitive Template Engine (live coding)
Antworten: 18
Zugriffe: 9653

OK Devnull,

Du warst schneller ;-).

Ich habe mit verschiedenen Varianten von eval() und exec herumgespielt, aber exec … in kannte ich noch nicht.

Danke für das schnelle Fixen.

Grüße,
Olaf
von filchos
Freitag 17. Juli 2009, 22:18
Forum: Ideen
Thema: Primitive Template Engine (live coding)
Antworten: 18
Zugriffe: 9653

Nachtrag:

kann es sein (noch nicht in bottle getestet), dass das Problem in
eval(self.co, args, globals())
steckt?

Test:
>>> s = """items = range(20)
div = 3
found = filter(lambda i: i % div == 0, items)
print found"""
>>> c = compile(s, '<template>', 'exec')
>>> eval(c)
[0, 3, 6, 9, 12, 15, 18 ...
von filchos
Freitag 17. Juli 2009, 22:04
Forum: Ideen
Thema: Primitive Template Engine (live coding)
Antworten: 18
Zugriffe: 9653

Hallo Defnull,

danke für die Idee mit der globalen Variablen.

Ich habe mir auch den erzeugten Code angeschaut, der direkt ausgeführt ja auch wunderbar funktioniert. Auf die Idee, dass eval() Eigenheiten, was die Namensräume angeht besitzt, bin ich gar nicht gekommen.

Grüße,
Olaf
von filchos
Freitag 17. Juli 2009, 21:38
Forum: Ideen
Thema: Primitive Template Engine (live coding)
Antworten: 18
Zugriffe: 9653

Hallo,

ich experimentiere gerade mit bottle (aktuelle Version von git), vor allem mit der netten, schlanken Templateengine. Ich finde allerdings einen Fehler nicht:

Pythonversion:
items = range(20)
div = 3
found = filter(lambda i: i % div == 0, items)
print found
ergibt wie erwartet [0, 3, 6, 9 ...
von filchos
Dienstag 14. Juli 2009, 06:50
Forum: Netzwerkprogrammierung
Thema: Django: Feld-Labels sind nicht DRY
Antworten: 15
Zugriffe: 2420

Hallo jens, hallo apollo13,

vielen Dank für die die interessanten Links. Die nächsten Tage ist noch anderes dran, dann werde ich mich der Sache wieder widmen.

Danke und Grüße,
Olaf
von filchos
Montag 13. Juli 2009, 07:05
Forum: Netzwerkprogrammierung
Thema: Django: Feld-Labels sind nicht DRY
Antworten: 15
Zugriffe: 2420

Hallo apollo13,
apollo13 hat geschrieben:Um es dann allerdings DRY zu halten würde ich das ganze in dem __init__ des Modelforms patchen […]
hast Du ein kurzes Codebeispiel für mich oder ein Tipp, wo dokumentiert ist, wie ich in __init__ die Felder ändern kann, anstatt sie neu zu setzen?

Grüße,
Olaf
von filchos
Samstag 11. Juli 2009, 21:39
Forum: Netzwerkprogrammierung
Thema: Django: Feld-Labels sind nicht DRY
Antworten: 15
Zugriffe: 2420

Hallo Leonidas,

Wo sich mir die Frage stellt, warum du das nicht von Anfang an gesagt hast...

Das habe ich ein bisschen im P.S. meines Ausgangspostings versteckt …

Letztendlich verfahre ich auch so, wie unter „Overriding the default field types“ beschrieben. Mich wundert bloß, dass dann in der ...
von filchos
Samstag 11. Juli 2009, 21:13
Forum: Netzwerkprogrammierung
Thema: Django: Feld-Labels sind nicht DRY
Antworten: 15
Zugriffe: 2420

Ich habe jetzt in der Form-Klasse Felddefinitionen aus zwei Gründen:

(a) ich benutze ein bestimmtes Widget:

dateofbirth = forms.DateField(widget = GermanDateWidget, label='Geburtsdatum')

(b) ich habe ein eigenes Feld, welches von RegexField erbt, aber eine feste RegEx vorgibt, da in vielen ...
von filchos
Samstag 11. Juli 2009, 19:20
Forum: Netzwerkprogrammierung
Thema: Django: Feld-Labels sind nicht DRY
Antworten: 15
Zugriffe: 2420

Hallo Leonidas,

anhand dieser Dokumentation habe ich auch gearbeitet. Einziger Unterschied ist die Art, wie ich im View eine Instanz erzeuge:

def edit(request):
# […]
# user is a single User object
params = {'instance': user}

if request.method == 'POST':
form = UserForm(request.POST ...
von filchos
Samstag 11. Juli 2009, 18:46
Forum: Netzwerkprogrammierung
Thema: Django: Feld-Labels sind nicht DRY
Antworten: 15
Zugriffe: 2420

Re: Django: Feld-Labels sind nicht DRY

Form-Klasse aus Model-Klasse erstellen lassen?

Hm,

die Klassendefinition des Models ist:
class User(models.Model):
# […]

Die des zugehörigen Formobjekts:
class UserForm(forms.ModelForm):
# […]
class Meta:
model = User

was muss ich zusätzlich tun, um die Form-Klasse aus der Model-Klasse ...
von filchos
Samstag 11. Juli 2009, 09:31
Forum: Netzwerkprogrammierung
Thema: Django: Feld-Labels sind nicht DRY
Antworten: 15
Zugriffe: 2420

Django: Feld-Labels sind nicht DRY

Hallo,

man nehme ein Feld für einen Vornamen:

models.py:
firstname = models.CharField(max_length = 50, blank=True, verbose_name='Vorname')

forms.py:
firstname = forms.CharField(max_length = 50, required=True, label='Vorname')

Das Admininterface holt sich verbose_name aus models.py.
Die ...
von filchos
Freitag 19. Juni 2009, 22:30
Forum: Netzwerkprogrammierung
Thema: Django, Mac OS X und Parallels
Antworten: 2
Zugriffe: 1210

Hallo mosenturm,

Vielen Dank für den Tipp. Das funktioniert.

Grüße,
Olaf
von filchos
Freitag 19. Juni 2009, 16:32
Forum: Netzwerkprogrammierung
Thema: Django, Mac OS X und Parallels
Antworten: 2
Zugriffe: 1210

Django, Mac OS X und Parallels

Hallo,

ich entwickle eine Djangoanwendung unter Mac OS X, die ich mit manage.py runserver starte.

Lokal kann ich die Anwendung unter http://localhost:8000 erreichen. Jetzt möchte ich das Frontend auch unter Windows XP mit Hilfe von Parallels testen.

Ich nutze das aktuelle Parallels 4. Der ...
von filchos
Montag 15. Juni 2009, 18:00
Forum: Allgemeine Fragen
Thema: Einsetzen von Bytestring (utf-8) in Unicodestring
Antworten: 12
Zugriffe: 1389

Heureka,

ich habe es vermutlich gefunden!:

Ich hatte bei MySQL als Collation utf8_bin angegeben. In diesem Fall werden tatsächlich Bytestrings zurückgegeben. Siehe auch:

http://docs.djangoproject.com/en/dev/ref/databases/#collation-settings

Bei Verwendung von utf8_swedish_ci werden – endlich ...
von filchos
Montag 15. Juni 2009, 17:28
Forum: Allgemeine Fragen
Thema: Einsetzen von Bytestring (utf-8) in Unicodestring
Antworten: 12
Zugriffe: 1389

Zum Stand:

ich habe mich einmal quer durch Django durchgewühlt und komme zu folgendem Ergebnis:

Ich rufe eine Seite mit u.a. folgendem Testcode auf:
u = User.objects.get(id=45)

In django/db/models/sql/query.py habe ich in der Methode execute_sql der Klasse BaseQuery folgenden Code eingefügt ...
von filchos
Montag 15. Juni 2009, 15:37
Forum: Allgemeine Fragen
Thema: Einsetzen von Bytestring (utf-8) in Unicodestring
Antworten: 12
Zugriffe: 1389

Ich werde jetzt versuchen, im Djangocode selber die Ursache zu finden.

Ergebnisse gebe ich ans Forum zurück, über Hilfe freue ich mich aber weiterhin ;-).

Grüße,
Olaf
von filchos
Mittwoch 10. Juni 2009, 18:17
Forum: Allgemeine Fragen
Thema: Einsetzen von Bytestring (utf-8) in Unicodestring
Antworten: 12
Zugriffe: 1389

Nachtrag, mehr spaßeshalber:

select hex('中') gibt als Antwort: E4B8AD

Das entspricht der utf-8-Kodierung des Unicode-Codepoints 4E2D, der auch tatsächlich dem Zeichen 中 entspricht.

Grüße,
Olaf