2012-04-11 6 views
-1

Ich habe eine Frage darüber, wie man Daten in djangos Datenbank eingibt. Ich habe die folgende Vorlage, in der ‚E‘ eine Variable, die die Zeichenfolge erhalten ist:Wie gebe ich Daten in der Datenbank von Django ein

<form action="." method="GET"><input type="text" name="E" style="width: 450px;height: 30px;" /></form> 

Das ist mein models.py, in dem ich habe eine Klasse ‚Unternehmen‘ genannt, und ich möchte diese Variable ‚E‘ in ‚Gegenstand‘ gespeichert werden:

class Company(models.Model): 
    Subject = models.CharField(max_length=30) 
    start_time = models.DateTimeField() 
    end_time = models.DateTimeField() 

    def __unicode__(self): 
     return self.Subject 

Dann in views.py ich so etwas wie dies schrieb die Variable im Betreff-Feld zu speichern, ist es unvollständig, und ich möchte Sie mir davon helfen:

def Text_Box(request): 
    T = request.GET.get(E,' ') 
    if T: 
     # I don't know how to make an object of class 'Company' so then I save ' T ' in Company.Subject 
    else: 
     return render_to_response("Base.html") # Base.html is my basic template file 

Ich würde wirklich schätzen, wenn Sie hel p ich damit. Vielen Dank im Voraus.

Sophia

+1

Überprüfen Sie [das Dokument] (https://docs.djangoproject.com/de/1.4/topics/forms/modelforms/) oder einfach dreckig 'Firma (Betreff = T)' – okm

+0

Denken Sie auch daran, POST für zu verwenden Operationen, die Daten oder Systemstatus ändern. Verwenden Sie GET für Abfragen, die nichts ändern. –

Antwort

3

Mein erster Ratschlag mit sich selbst PEP 8, gefunden vertraut zu machen ist hier: http://www.python.org/dev/peps/pep-0008/

Während es natürlich erscheinen mag zu nutzen oder nicht zu nutzen, hat es wirklich sinngemäß auf die Python-Programmierer.

Mein zweiter Rat ist, beginnen Sie mit der django Tutorial (vorausgesetzt, Sie bereits Python kennen) hier:

https://docs.djangoproject.com/en/1.4/intro/tutorial01/

Es gibt auch die django Buch, hier:

http://www.djangobook.com/en/2.0/

Mein dritter Ratschlag, basierend auf der Frage, die Sie stellen, ich denke, Sie sollten sich mit Python im Allgemeinen vertraut machen.

Um Ihre Frage spezifisch zu beantworten, lesen Sie den obigen Kommentar von okm, aber Sie können ein Modell instanziieren, indem Sie ihm die Argumente der Modellklasse übergeben. Diese Instanz, die Sie einer Variablen zuweisen würden, lassen Sie my_variable und rufen Sie dann "save" darauf. In Ihrem Fall wird das Speichern jedoch fehlschlagen, da Sie auch die Argumente start_time und end_time übergeben müssen. Welche sind nicht optional.

Diese können nach der Instanziierung auch im Modell gespeichert werden, z. B. my_variable.start_time = xx/xxx/xx.

+1

Das sind einige wirklich gute konstruktive Ratschläge. – graytist

Verwandte Themen