Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
F
flask-admin
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Python-Dev
flask-admin
Commits
0d80fd78
Commit
0d80fd78
authored
Sep 03, 2016
by
Alan Hamlett
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
support for WTForms >= 3.0
parent
0cd24273
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
22 additions
and
27 deletions
+22
-27
advanced.rst
doc/advanced.rst
+3
-3
app.py
examples/auth-flask-login/app.py
+3
-3
app.py
examples/auth-mongoengine/app.py
+3
-4
app.py
examples/pymongo/app.py
+7
-7
fields.py
flask_admin/contrib/appengine/fields.py
+2
-2
filters.py
flask_admin/contrib/peewee/filters.py
+0
-3
fields.py
flask_admin/contrib/sqla/fields.py
+3
-4
widgets.py
flask_admin/model/widgets.py
+1
-1
No files found.
doc/advanced.rst
View file @
0d80fd78
...
...
@@ -428,8 +428,8 @@ The bare minimum you have to provide for Flask-Admin to work with PyMongo:
This is minimal PyMongo view::
class UserForm(Form):
name =
Text
Field('Name')
email =
Text
Field('Email')
name =
String
Field('Name')
email =
String
Field('Email')
class UserView(ModelView):
column_list = ('name', 'email')
...
...
@@ -519,7 +519,7 @@ do with it, so it won't generate a form field. In this case, you would need to m
class MyView(ModelView):
def scaffold_form(self):
form_class = super(UserView, self).scaffold_form()
form_class.extra =
Text
Field('Extra')
form_class.extra =
String
Field('Extra')
return form_class
Customizing Batch Actions
...
...
examples/auth-flask-login/app.py
View file @
0d80fd78
...
...
@@ -51,7 +51,7 @@ class User(db.Model):
# Define login and registration forms (for flask-login)
class
LoginForm
(
form
.
Form
):
login
=
fields
.
Text
Field
(
validators
=
[
validators
.
required
()])
login
=
fields
.
String
Field
(
validators
=
[
validators
.
required
()])
password
=
fields
.
PasswordField
(
validators
=
[
validators
.
required
()])
def
validate_login
(
self
,
field
):
...
...
@@ -71,8 +71,8 @@ class LoginForm(form.Form):
class
RegistrationForm
(
form
.
Form
):
login
=
fields
.
Text
Field
(
validators
=
[
validators
.
required
()])
email
=
fields
.
Text
Field
()
login
=
fields
.
String
Field
(
validators
=
[
validators
.
required
()])
email
=
fields
.
String
Field
()
password
=
fields
.
PasswordField
(
validators
=
[
validators
.
required
()])
def
validate_login
(
self
,
field
):
...
...
examples/auth-mongoengine/app.py
View file @
0d80fd78
...
...
@@ -6,7 +6,6 @@ from wtforms import form, fields, validators
import
flask_admin
as
admin
import
flask_login
as
login
from
flask_admin.contrib.mongoengine
import
ModelView
from
flask_admin
import
helpers
# Create application
app
=
Flask
(
__name__
)
...
...
@@ -47,7 +46,7 @@ class User(db.Document):
# Define login and registration forms (for flask-login)
class
LoginForm
(
form
.
Form
):
login
=
fields
.
Text
Field
(
validators
=
[
validators
.
required
()])
login
=
fields
.
String
Field
(
validators
=
[
validators
.
required
()])
password
=
fields
.
PasswordField
(
validators
=
[
validators
.
required
()])
def
validate_login
(
self
,
field
):
...
...
@@ -64,8 +63,8 @@ class LoginForm(form.Form):
class
RegistrationForm
(
form
.
Form
):
login
=
fields
.
Text
Field
(
validators
=
[
validators
.
required
()])
email
=
fields
.
Text
Field
()
login
=
fields
.
String
Field
(
validators
=
[
validators
.
required
()])
email
=
fields
.
String
Field
()
password
=
fields
.
PasswordField
(
validators
=
[
validators
.
required
()])
def
validate_login
(
self
,
field
):
...
...
examples/pymongo/app.py
View file @
0d80fd78
...
...
@@ -23,14 +23,14 @@ db = conn.test
# User admin
class
InnerForm
(
form
.
Form
):
name
=
fields
.
Text
Field
(
'Name'
)
test
=
fields
.
Text
Field
(
'Test'
)
name
=
fields
.
String
Field
(
'Name'
)
test
=
fields
.
String
Field
(
'Test'
)
class
UserForm
(
form
.
Form
):
name
=
fields
.
Text
Field
(
'Name'
)
email
=
fields
.
Text
Field
(
'Email'
)
password
=
fields
.
Text
Field
(
'Password'
)
name
=
fields
.
String
Field
(
'Name'
)
email
=
fields
.
String
Field
(
'Email'
)
password
=
fields
.
String
Field
(
'Password'
)
# Inner form
inner
=
InlineFormField
(
InnerForm
)
...
...
@@ -48,9 +48,9 @@ class UserView(ModelView):
# Tweet view
class
TweetForm
(
form
.
Form
):
name
=
fields
.
Text
Field
(
'Name'
)
name
=
fields
.
String
Field
(
'Name'
)
user_id
=
fields
.
SelectField
(
'User'
,
widget
=
Select2Widget
())
text
=
fields
.
Text
Field
(
'Text'
)
text
=
fields
.
String
Field
(
'Text'
)
testie
=
fields
.
BooleanField
(
'Test'
)
...
...
flask_admin/contrib/appengine/fields.py
View file @
0d80fd78
from
wtforms.fields
import
Text
Field
from
wtforms.fields
import
String
Field
from
google.appengine.ext
import
ndb
import
decimal
class
GeoPtPropertyField
(
Text
Field
):
class
GeoPtPropertyField
(
String
Field
):
def
process_formdata
(
self
,
valuelist
):
if
valuelist
:
try
:
...
...
flask_admin/contrib/peewee/filters.py
View file @
0d80fd78
import
time
import
datetime
from
flask_admin.babel
import
lazy_gettext
from
flask_admin.model
import
filters
...
...
flask_admin/contrib/sqla/fields.py
View file @
0d80fd78
...
...
@@ -3,8 +3,7 @@
"""
import
operator
from
wtforms
import
widgets
from
wtforms.fields
import
SelectFieldBase
,
TextField
from
wtforms.fields
import
SelectFieldBase
,
StringField
from
wtforms.validators
import
ValidationError
try
:
...
...
@@ -184,8 +183,8 @@ class QuerySelectMultipleField(QuerySelectField):
class
HstoreForm
(
BaseForm
):
""" Form used in InlineFormField/InlineHstoreList for HSTORE columns """
key
=
Text
Field
(
lazy_gettext
(
'Key'
))
value
=
Text
Field
(
lazy_gettext
(
'Value'
))
key
=
String
Field
(
lazy_gettext
(
'Key'
))
value
=
String
Field
(
lazy_gettext
(
'Value'
))
class
KeyValue
(
object
):
...
...
flask_admin/model/widgets.py
View file @
0d80fd78
...
...
@@ -98,7 +98,7 @@ class XEditableWidget(object):
"""
Return extra kwargs based on the field type.
"""
if
field
.
type
in
[
'StringField'
,
'TextField'
]
:
if
field
.
type
==
'StringField'
:
kwargs
[
'data-type'
]
=
'text'
elif
field
.
type
==
'TextAreaField'
:
kwargs
[
'data-type'
]
=
'textarea'
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment