Flask Macro - Selectbox rendern
Das Problem mit der Problembeschreibung ist, dass das nicht der gesamte Traceback ist.
Hier:
Code: Alles auswählen
Traceback (most recent call last):
File "./run.py", line 4, in <module>
import j.models
File "/home/nuc/Dropbox/J/j/__init__.py", line 5, in <module>
from j.views import views
File "/home/nuc/Dropbox/J/j/views.py", line 2, in <module>
from j.forms import PlaceAdvertisement
File "/home/nuc/Dropbox/J/j/forms.py", line 76
html.append('</select>')
^
SyntaxError: invalid syntax
Zuletzt geändert von meego am Donnerstag 24. Dezember 2015, 12:27, insgesamt 1-mal geändert.
- noisefloor
- User
- Beiträge: 4151
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
das ist doch nicht alles, oder? Da fehlt noch die Angabe, welcher Error aufgetreten ist...
Gruß, noisefloor
das ist doch nicht alles, oder? Da fehlt noch die Angabe, welcher Error aufgetreten ist...
Gruß, noisefloor
- noisefloor
- User
- Beiträge: 4151
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
du hast in deiner Zeile 75 einen Fehler - da musst du dann mal Suchen (z.B. fehlende schließende Anführungszeichen, fehlend schließende Klammer etc.)
Gruß, noisefloor
du hast in deiner Zeile 75 einen Fehler - da musst du dann mal Suchen (z.B. fehlende schließende Anführungszeichen, fehlend schließende Klammer etc.)
Gruß, noisefloor
Gefunden. Funktioniert jetzt alles. Bis auf die Selectbox. Die Einträge sind leer. 

Code: Alles auswählen
class SelectWithChooseOption(widgets.Select):
def __call__(self, field, **kwargs):
kwargs.setdefault('id', field.id)
if self.multiple:
kwargs['multiple'] = True
html = ['<select %s>' % widgets.html_params(name=field.name, **kwargs)]
any_selected = False
for val, label, selected in field.iter_choices():
html.append(self.render_option(val, label, selected))
any_selected |= selected
html.insert(1, self.render_option('', 'Choose your option', selected=not any_selected, disabled=True))
html.append('</select>')
return widgets.HTMLString(''.join(html))
class QuerySelectFieldWithChooseOption(QuerySelectField):
widget = SelectWithChooseOption()