I definiert ist web2py bin mit einem SQLFORM zu schaffen, die einige Updates (derzeit leer) Textfelder:Web2py: Wie Inhalt eines Textbereich setzen, nachdem es
form = SQLFORM(db.table, db.table(1), fields = ['blank_name'])
, die mit einem Textarea-Tag erstellt name='blank_name'
. Ich möchte dann den Standardtext für diesen Textbereich auf eine Variable setzen. Also habe ich versucht,
form.element(_name='blank_name').update(_value='My default value')
aber dies setzt lediglich das ‚Wert‘ Attribut des Textbereiches auf ‚Meinen Standardwert‘. Wie kann ich den Inhalt des zuvor leeren Textfelds auf einen Wert setzen?
Ich habe festgestellt, dass der Standardwert Ansatz funktioniert nur beim Erstellen einer neuen Zeile in der DB, nicht eine bestehende aktualisieren. Ich habe auch einen anderen Standard für jede aktualisierte Zeile, so dass die "Standard" -Methode unangebracht erscheint. Aber form.element (_name = 'leerer_name'). Append ("mein Text") funktioniert einwandfrei, und ich gehe davon aus, dass es bei der Validierung des Formulars weitergegeben wird. Vielen Dank dafür. – user2667066
True, das Festlegen der Standardeinstellung funktioniert nicht, wenn ein vorhandener Datensatz aktualisiert wird. Sie * können * jedoch die Standardeinstellung verwenden, auch wenn Sie für jede Zeile einen anderen Wert benötigen, da das "Standard" -Attribut überall in Ihrem Code gesetzt werden kann, auch unmittelbar vor der Formularerstellungszeile (dh Sie sind nicht darauf beschränkt) Setzen Sie den Standardwert nur einmal auf einen einzelnen Wert, bei dem das Modell zuerst definiert wird. – Anthony