Dies wird eine lange Post sein, also ertragen Sie mit mir. Ich denke, ich bin zu der Erkenntnis gekommen, dass ich eine Menge Code, den ich vorher in meinen Modellen geschrieben habe, neu schreiben muss.Soll ich klassenbasierte oder funktionsbasierte Ansichten dafür verwenden?
meine Modelle wie folgt aussehen:
class Word(models.Model):
'''Word table for word, and frequency data'''
language = models.ForeignKey(Language)
name = models.CharField(max_length=50)
frequency = models.IntegerField(default=0)
rank = models.IntegerField(default=0)
def __unicode__(self):
value = u'%s' % (self.name)
return value
def wn_lookup(self):
'''Calls the wordnet CLI for self'''
...breaks up the output and returns the definitions as a list of tuples
def wiktionary_lookup(self, wiktionary_prefix, driver):
...looks up the definition of the word on wiktionary
returns data as a list
def define(self, driver, choice, ask_input):
...Prints out a lot of options and asks the user to choose
what they want as a definition
It then creates objects and calls other methods on a
subsequent definitions model
Beachten Sie, dass die letzte Methode erstellt und ruft Methoden eines subqequent Definitionen Modell.
Ich habe ein paar Modelle, alle mit Methoden, die viel Benutzereingabe erfordern, um die Dateneingabe zu halbieren. Ich glaube, dass ich das dumm gemacht habe und ich sollte sie tatsächlich in die Ansichten aufnehmen, aber ich bin ein bisschen verwirrt darüber, wie das geht.
- Sollte ich eine klassenbasierte oder funktionsbasierte Ansicht verwenden?
- Ich denke, ich muss tatsächlich Formulare und Vorlagen für alle diese Ansichten schreiben?
- Ist es möglich, dass ich alles dort lassen sollte, wo es ist (in Modellen) und nicht in Ansichten?