einfache DB Abfrage

Django, Flask, Bottle, WSGI, CGI…
Antworten
1992Alexander1992
User
Beiträge: 5
Registriert: Freitag 28. April 2017, 09:13

Hallo liebe Community,

Ich weiß nicht, wie ich etwas von der DB abfragen kann.
Als DB verwende ich Sqlite.

Ich habe ein Model angelegt mit dem Namen "Score" und einem Inhalt von Integer "Tag".
Das Model ist in der DB und ein Wert steht bereits drin.

Nun die Frage:
Wie kann ich in der HTML das abfragen?
{{ scores.tag }} funktioniert nicht.

Gruß,
1992Alexander1992
Benutzeravatar
noisefloor
User
Beiträge: 3843
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

deine Infos sind extrem "dünn". Du müsstest schon noch sagen, welches Framework du benutzt... Vermutlich Django?

Grundsätzlich musst du die Datenbank vorher abfragen und dann übergibst du das Ergebnis ans Template. Das Template kommt _nicht_ auf auto-magische Weise an Werte aus der DB.

Des Weiteren wäre es noch hilfreich, wenn du den Model und den Code deines Views hier posten würdest.

Gruß, noisefloor
1992Alexander1992
User
Beiträge: 5
Registriert: Freitag 28. April 2017, 09:13

Hi noisefloor,

du hast recht, ich verwende Django als Framework.

So sieht mein Model aus:

Code: Alles auswählen

class Score(models.Model):
    tag = models.IntegerField()
    woche = models.IntegerField()
    monat = models.IntegerField()
So sieht mein View dazu aus:

Code: Alles auswählen

def CheckWin(request):
    return render(request, 'check.html', {})
Gruß,
1992Alexander1992
Benutzeravatar
noisefloor
User
Beiträge: 3843
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

wie gesagt, du musst im View die DB über das Model abfragen und das Ergebnis dem Template mitgeben - dann kann da auch was angezeigt werden.

Offen gesagt - das sind die absoluten Grundlagen von Django... Hast du mal das offiziellen Django-Tutorial gelesen? Oder das Django for Girls Tutorial (auch für Boys sehr gut)? Da ist das alles im Detail erklärt. Das sind halt die Basics, die musst du drauf haben. Sonst kannst du Django nie effektiv einsetzen.

Gruß, noisefloor
__deets__
User
Beiträge: 14493
Registriert: Mittwoch 14. Oktober 2015, 14:29

Du musst eine Abfrage im View machen, und die an das Template übergeben. Magisch macht das keiner für dich. Sieht man zb hier:

https://docs.djangoproject.com/en/2.0/intro/tutorial03/
1992Alexander1992
User
Beiträge: 5
Registriert: Freitag 28. April 2017, 09:13

Hi,

Ich habe Tutorial schon gemacht, danke nochmal für den tipp. :D

Ich werde es mir morgen nochmal zur Brust nehmen.

Gruß,
1992Alexander1992
Benutzeravatar
pillmuncher
User
Beiträge: 1482
Registriert: Samstag 21. März 2009, 22:59
Wohnort: Pfaffenwinkel

@1992Alexander1992: Bist du sicher, dass dein Score-Model so richtig ist? Schau mal:

Code: Alles auswählen

some_score = Score(tag=123, woche=456, monat=789)
Laut deiner Model-Definition ist das erlaubt, aber es ist vermutlich nicht das, was du möchtest.
In specifications, Murphy's Law supersedes Ohm's.
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

@pillmuncher: wenn man einen Tages-, Wochen- und Monats-Punkteschnitt speichern will, dann passen die Zahlen ja.

@1992Alexander1992: kann man Wochen- und Monatspunkte nicht aus den Tagespunkten ausrechnen?
Antworten