Commit 971ce904 authored by Serge S. Koval's avatar Serge S. Koval Committed by GitHub

Merge pull request #1309 from datran/coremabu

Coremabu
parents 7bc2f2d8 30d2add1
...@@ -7,6 +7,10 @@ from wtforms_appengine import ndb as wt_ndb ...@@ -7,6 +7,10 @@ from wtforms_appengine import ndb as wt_ndb
from google.appengine.ext import db from google.appengine.ext import db
from google.appengine.ext import ndb from google.appengine.ext import ndb
from flask_wtf import Form
from flask_admin.model.form import create_editable_list_form
class NdbModelView(BaseModelView): class NdbModelView(BaseModelView):
""" """
AppEngine NDB model scaffolding. AppEngine NDB model scaffolding.
...@@ -32,7 +36,13 @@ class NdbModelView(BaseModelView): ...@@ -32,7 +36,13 @@ class NdbModelView(BaseModelView):
pass pass
def scaffold_form(self): def scaffold_form(self):
return wt_ndb.model_form(self.model()) form_class = wt_ndb.model_form(self.model())
return form_class
def scaffold_list_form(self, widget=None, validators=None):
form_class = wt_ndb.model_form(self.model())
result = create_editable_list_form(Form, form_class, widget)
return result
def get_list(self, page, sort_field, sort_desc, search, filters): def get_list(self, page, sort_field, sort_desc, search, filters):
#TODO: implement filters (don't think search can work here) #TODO: implement filters (don't think search can work here)
......
...@@ -98,7 +98,7 @@ class XEditableWidget(object): ...@@ -98,7 +98,7 @@ class XEditableWidget(object):
""" """
Return extra kwargs based on the field type. Return extra kwargs based on the field type.
""" """
if field.type == 'StringField': if field.type in ['StringField', 'TextField']:
kwargs['data-type'] = 'text' kwargs['data-type'] = 'text'
elif field.type == 'TextAreaField': elif field.type == 'TextAreaField':
kwargs['data-type'] = 'textarea' kwargs['data-type'] = 'textarea'
...@@ -111,7 +111,7 @@ class XEditableWidget(object): ...@@ -111,7 +111,7 @@ class XEditableWidget(object):
{'value': '1', 'text': gettext('Yes')} {'value': '1', 'text': gettext('Yes')}
]) ])
kwargs['data-role'] = 'x-editable-boolean' kwargs['data-role'] = 'x-editable-boolean'
elif field.type == 'Select2Field': elif field.type in ['Select2Field', 'SelectField']:
kwargs['data-type'] = 'select' kwargs['data-type'] = 'select'
choices = [{'value': x, 'text': y} for x, y in field.choices] choices = [{'value': x, 'text': y} for x, y in field.choices]
...@@ -142,7 +142,7 @@ class XEditableWidget(object): ...@@ -142,7 +142,7 @@ class XEditableWidget(object):
kwargs['data-type'] = 'number' kwargs['data-type'] = 'number'
kwargs['data-step'] = 'any' kwargs['data-step'] = 'any'
elif field.type in ['QuerySelectField', 'ModelSelectField', elif field.type in ['QuerySelectField', 'ModelSelectField',
'QuerySelectMultipleField']: 'QuerySelectMultipleField', 'KeyPropertyField']:
# QuerySelectField and ModelSelectField are for relations # QuerySelectField and ModelSelectField are for relations
kwargs['data-type'] = 'select' kwargs['data-type'] = 'select'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment