Gewusst wie: einfügen von NULL in der Datenbank mit Django
Ich habe ein problem mit einfügen von NULL in Django. Ich meine, ich weiß nicht, wie Sie dies tun.
Habe ich die Funktion, nennen wir es find_position
, dann muss ich das Feld im Modell wie position
(IntegerField, null=True, blank=True). In dieser Funktion untersuchen Sie einige html-code, und wenn es passend mit einigen regex, es gibt integer, aber wenn Sie es nicht finden - habe NULL zurück, oder None oder etwas, dass ich in der Datenbank.
def find_position(self, to_find, something):
...
if re.search(to_find, something):
return i + (page * 10) + 1
return NULL # or what i have to return here?
Und ich habe diese:
_position = find_position(to_find, something)
p = Result(position=_position, ...)
r.save()
Ich vorher Benutzer CharField für position
, und kehrte '-' wenn nicht finden Sie das Ergebnis. Aber ich hatte Probleme mit dem zählen insgesamt die Ergebnisse, wie position__lte=10 (weil es nicht integer
und es Durcheinander mit zahlen und strings -
.
Was kann ich tun?
- Haben Sie versucht, Keiner?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Stellen Sie die Funktion zurück
None
(oder nicht Rückkehr nichts, es ist das gleiche wie die RückgabeNone
), in der Datenbank gespeichert wirdNull
:-
vor zu NULL?UPDATE youTable Set position = NULL WHERE position = '-'
.update()
in der shell.Results.objects.filter(position='-').update(position=None)