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
338d5110
Commit
338d5110
authored
Nov 03, 2014
by
Christian Wygoda
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
WTForms 2 compatibility
Replaced deprecated TextField with StringField
parent
094690fc
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
38 additions
and
39 deletions
+38
-39
.gitignore
.gitignore
+2
-0
fileadmin.py
flask_admin/contrib/fileadmin.py
+1
-1
form.py
flask_admin/contrib/peewee/form.py
+4
-1
form.py
flask_admin/contrib/sqla/form.py
+5
-5
view.py
flask_admin/contrib/sqla/view.py
+1
-1
fields.py
flask_admin/form/fields.py
+3
-3
upload.py
flask_admin/form/upload.py
+2
-2
base.py
flask_admin/model/base.py
+1
-1
form.py
flask_admin/model/form.py
+1
-1
test_basic.py
flask_admin/tests/mongoengine/test_basic.py
+4
-10
test_basic.py
flask_admin/tests/peeweemodel/test_basic.py
+3
-3
test_basic.py
flask_admin/tests/pymongo/test_basic.py
+2
-2
test_basic.py
flask_admin/tests/sqlamodel/test_basic.py
+5
-5
test_inlineform.py
flask_admin/tests/sqlamodel/test_inlineform.py
+1
-1
test_model.py
flask_admin/tests/test_model.py
+3
-3
No files found.
.gitignore
View file @
338d5110
...
@@ -23,3 +23,5 @@ examples/forms/files
...
@@ -23,3 +23,5 @@ examples/forms/files
.idea/
.idea/
*.sqlite
*.sqlite
env
env
*.egg
.eggs
flask_admin/contrib/fileadmin.py
View file @
338d5110
...
@@ -24,7 +24,7 @@ class NameForm(form.BaseForm):
...
@@ -24,7 +24,7 @@ class NameForm(form.BaseForm):
Validates if provided name is valid for *nix and Windows systems.
Validates if provided name is valid for *nix and Windows systems.
"""
"""
name
=
fields
.
Text
Field
()
name
=
fields
.
String
Field
()
regexp
=
re
.
compile
(
r'^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+$'
)
regexp
=
re
.
compile
(
r'^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+$'
)
...
...
flask_admin/contrib/peewee/form.py
View file @
338d5110
from
wtforms
import
fields
from
wtforms
import
fields
from
peewee
import
(
DateTimeField
,
DateField
,
TimeField
,
from
peewee
import
(
CharField
,
DateTimeField
,
DateField
,
TimeField
,
PrimaryKeyField
,
ForeignKeyField
,
BaseModel
)
PrimaryKeyField
,
ForeignKeyField
,
BaseModel
)
from
wtfpeewee.orm
import
ModelConverter
,
model_form
from
wtfpeewee.orm
import
ModelConverter
,
model_form
...
@@ -85,6 +85,9 @@ class CustomModelConverter(ModelConverter):
...
@@ -85,6 +85,9 @@ class CustomModelConverter(ModelConverter):
super
(
CustomModelConverter
,
self
)
.
__init__
(
additional
)
super
(
CustomModelConverter
,
self
)
.
__init__
(
additional
)
self
.
view
=
view
self
.
view
=
view
# @todo: This really should be done within wtfpeewee
self
.
defaults
[
CharField
]
=
fields
.
StringField
self
.
converters
[
PrimaryKeyField
]
=
self
.
handle_pk
self
.
converters
[
PrimaryKeyField
]
=
self
.
handle_pk
self
.
converters
[
DateTimeField
]
=
self
.
handle_datetime
self
.
converters
[
DateTimeField
]
=
self
.
handle_datetime
self
.
converters
[
DateField
]
=
self
.
handle_date
self
.
converters
[
DateField
]
=
self
.
handle_date
...
...
flask_admin/contrib/sqla/form.py
View file @
338d5110
...
@@ -274,7 +274,7 @@ class AdminModelConverter(ModelConverterBase):
...
@@ -274,7 +274,7 @@ class AdminModelConverter(ModelConverterBase):
field_args
[
'filters'
]
=
filters
field_args
[
'filters'
]
=
filters
self
.
_string_common
(
column
=
column
,
field_args
=
field_args
,
**
extra
)
self
.
_string_common
(
column
=
column
,
field_args
=
field_args
,
**
extra
)
return
fields
.
Text
Field
(
**
field_args
)
return
fields
.
String
Field
(
**
field_args
)
@
converts
(
'Text'
,
'UnicodeText'
,
@
converts
(
'Text'
,
'UnicodeText'
,
'sqlalchemy.types.LargeBinary'
,
'sqlalchemy.types.Binary'
)
'sqlalchemy.types.LargeBinary'
,
'sqlalchemy.types.Binary'
)
...
@@ -316,25 +316,25 @@ class AdminModelConverter(ModelConverterBase):
...
@@ -316,25 +316,25 @@ class AdminModelConverter(ModelConverterBase):
@
converts
(
'databases.mysql.MSYear'
)
@
converts
(
'databases.mysql.MSYear'
)
def
conv_MSYear
(
self
,
field_args
,
**
extra
):
def
conv_MSYear
(
self
,
field_args
,
**
extra
):
field_args
[
'validators'
]
.
append
(
validators
.
NumberRange
(
min
=
1901
,
max
=
2155
))
field_args
[
'validators'
]
.
append
(
validators
.
NumberRange
(
min
=
1901
,
max
=
2155
))
return
fields
.
Text
Field
(
**
field_args
)
return
fields
.
String
Field
(
**
field_args
)
@
converts
(
'databases.postgres.PGInet'
,
'dialects.postgresql.base.INET'
)
@
converts
(
'databases.postgres.PGInet'
,
'dialects.postgresql.base.INET'
)
def
conv_PGInet
(
self
,
field_args
,
**
extra
):
def
conv_PGInet
(
self
,
field_args
,
**
extra
):
field_args
.
setdefault
(
'label'
,
u'IP Address'
)
field_args
.
setdefault
(
'label'
,
u'IP Address'
)
field_args
[
'validators'
]
.
append
(
validators
.
IPAddress
())
field_args
[
'validators'
]
.
append
(
validators
.
IPAddress
())
return
fields
.
Text
Field
(
**
field_args
)
return
fields
.
String
Field
(
**
field_args
)
@
converts
(
'dialects.postgresql.base.MACADDR'
)
@
converts
(
'dialects.postgresql.base.MACADDR'
)
def
conv_PGMacaddr
(
self
,
field_args
,
**
extra
):
def
conv_PGMacaddr
(
self
,
field_args
,
**
extra
):
field_args
.
setdefault
(
'label'
,
u'MAC Address'
)
field_args
.
setdefault
(
'label'
,
u'MAC Address'
)
field_args
[
'validators'
]
.
append
(
validators
.
MacAddress
())
field_args
[
'validators'
]
.
append
(
validators
.
MacAddress
())
return
fields
.
Text
Field
(
**
field_args
)
return
fields
.
String
Field
(
**
field_args
)
@
converts
(
'dialects.postgresql.base.UUID'
)
@
converts
(
'dialects.postgresql.base.UUID'
)
def
conv_PGUuid
(
self
,
field_args
,
**
extra
):
def
conv_PGUuid
(
self
,
field_args
,
**
extra
):
field_args
.
setdefault
(
'label'
,
u'UUID'
)
field_args
.
setdefault
(
'label'
,
u'UUID'
)
field_args
[
'validators'
]
.
append
(
validators
.
UUID
())
field_args
[
'validators'
]
.
append
(
validators
.
UUID
())
return
fields
.
Text
Field
(
**
field_args
)
return
fields
.
String
Field
(
**
field_args
)
@
converts
(
'sqlalchemy.dialects.postgresql.base.ARRAY'
)
@
converts
(
'sqlalchemy.dialects.postgresql.base.ARRAY'
)
def
conv_ARRAY
(
self
,
field_args
,
**
extra
):
def
conv_ARRAY
(
self
,
field_args
,
**
extra
):
...
...
flask_admin/contrib/sqla/view.py
View file @
338d5110
...
@@ -146,7 +146,7 @@ class ModelView(BaseModelView):
...
@@ -146,7 +146,7 @@ class ModelView(BaseModelView):
class MyInlineModelConverter(AdminModelConverter):
class MyInlineModelConverter(AdminModelConverter):
def post_process(self, form_class, info):
def post_process(self, form_class, info):
form_class.value = wtf.
Text
Field('value')
form_class.value = wtf.
String
Field('value')
return form_class
return form_class
class MyAdminView(ModelView):
class MyAdminView(ModelView):
...
...
flask_admin/form/fields.py
View file @
338d5110
...
@@ -32,9 +32,9 @@ class DateTimeField(fields.DateTimeField):
...
@@ -32,9 +32,9 @@ class DateTimeField(fields.DateTimeField):
Any additional parameters
Any additional parameters
"""
"""
super
(
DateTimeField
,
self
)
.
__init__
(
label
,
validators
,
**
kwargs
)
super
(
DateTimeField
,
self
)
.
__init__
(
label
,
validators
,
**
kwargs
)
self
.
format
=
format
or
'
%
Y-
%
m-
%
d
%
H:
%
M:
%
S'
self
.
format
=
format
or
'
%
Y-
%
m-
%
d
%
H:
%
M:
%
S'
class
TimeField
(
fields
.
Field
):
class
TimeField
(
fields
.
Field
):
"""
"""
A text field which stores a `datetime.time` object.
A text field which stores a `datetime.time` object.
...
@@ -139,7 +139,7 @@ class Select2Field(fields.SelectField):
...
@@ -139,7 +139,7 @@ class Select2Field(fields.SelectField):
super
(
Select2Field
,
self
)
.
pre_validate
(
form
)
super
(
Select2Field
,
self
)
.
pre_validate
(
form
)
class
Select2TagsField
(
fields
.
Text
Field
):
class
Select2TagsField
(
fields
.
String
Field
):
"""`Select2 <http://ivaynberg.github.com/select2/#tags>`_ styled text field.
"""`Select2 <http://ivaynberg.github.com/select2/#tags>`_ styled text field.
You must include select2.js, form.js and select2 stylesheet for it to work.
You must include select2.js, form.js and select2 stylesheet for it to work.
"""
"""
...
...
flask_admin/form/upload.py
View file @
338d5110
...
@@ -109,11 +109,11 @@ class ImageUploadInput(object):
...
@@ -109,11 +109,11 @@ class ImageUploadInput(object):
# Fields
# Fields
class
FileUploadField
(
fields
.
Text
Field
):
class
FileUploadField
(
fields
.
String
Field
):
"""
"""
Customizable file-upload field.
Customizable file-upload field.
Saves file to configured path, handles updates and deletions. Inherits from `
Text
Field`,
Saves file to configured path, handles updates and deletions. Inherits from `
String
Field`,
resulting filename will be stored as string.
resulting filename will be stored as string.
"""
"""
widget
=
FileUploadInput
()
widget
=
FileUploadInput
()
...
...
flask_admin/model/base.py
View file @
338d5110
...
@@ -314,7 +314,7 @@ class BaseModelView(BaseView, ActionsMixin):
...
@@ -314,7 +314,7 @@ class BaseModelView(BaseView, ActionsMixin):
For example::
For example::
class MyForm(Form):
class MyForm(Form):
name =
Text
Field('Name')
name =
String
Field('Name')
class MyModelView(BaseModelView):
class MyModelView(BaseModelView):
form = MyForm
form = MyForm
...
...
flask_admin/model/form.py
View file @
338d5110
...
@@ -60,7 +60,7 @@ class InlineBaseFormAdmin(object):
...
@@ -60,7 +60,7 @@ class InlineBaseFormAdmin(object):
class MyInlineForm(InlineFormAdmin):
class MyInlineForm(InlineFormAdmin):
def postprocess_form(self, form):
def postprocess_form(self, form):
form.value =
Text
Field('value')
form.value =
String
Field('value')
return form
return form
class MyAdmin(ModelView):
class MyAdmin(ModelView):
...
...
flask_admin/tests/mongoengine/test_basic.py
View file @
338d5110
...
@@ -67,14 +67,8 @@ def test_model():
...
@@ -67,14 +67,8 @@ def test_model():
eq_
(
view
.
_search_supported
,
False
)
eq_
(
view
.
_search_supported
,
False
)
eq_
(
view
.
_filters
,
None
)
eq_
(
view
.
_filters
,
None
)
# Verify form
eq_
(
view
.
_create_form_class
.
test1
.
field_class
,
fields
.
StringField
)
# TODO: Figure out why there's inconsistency
eq_
(
view
.
_create_form_class
.
test2
.
field_class
,
fields
.
StringField
)
try
:
eq_
(
view
.
_create_form_class
.
test1
.
field_class
,
fields
.
TextField
)
eq_
(
view
.
_create_form_class
.
test2
.
field_class
,
fields
.
TextField
)
except
AssertionError
:
eq_
(
view
.
_create_form_class
.
test1
.
field_class
,
fields
.
StringField
)
eq_
(
view
.
_create_form_class
.
test2
.
field_class
,
fields
.
StringField
)
eq_
(
view
.
_create_form_class
.
test3
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test3
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test4
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test4
.
field_class
,
fields
.
TextAreaField
)
...
@@ -150,7 +144,7 @@ def test_extra_fields():
...
@@ -150,7 +144,7 @@ def test_extra_fields():
view
=
CustomModelView
(
view
=
CustomModelView
(
Model1
,
Model1
,
form_extra_fields
=
{
form_extra_fields
=
{
'extra_field'
:
fields
.
Text
Field
(
'Extra Field'
)
'extra_field'
:
fields
.
String
Field
(
'Extra Field'
)
}
}
)
)
admin
.
add_view
(
view
)
admin
.
add_view
(
view
)
...
@@ -177,7 +171,7 @@ def test_extra_field_order():
...
@@ -177,7 +171,7 @@ def test_extra_field_order():
Model1
,
Model1
,
form_columns
=
(
'extra_field'
,
'test1'
),
form_columns
=
(
'extra_field'
,
'test1'
),
form_extra_fields
=
{
form_extra_fields
=
{
'extra_field'
:
fields
.
Text
Field
(
'Extra Field'
)
'extra_field'
:
fields
.
String
Field
(
'Extra Field'
)
}
}
)
)
admin
.
add_view
(
view
)
admin
.
add_view
(
view
)
...
...
flask_admin/tests/peeweemodel/test_basic.py
View file @
338d5110
...
@@ -82,8 +82,8 @@ def test_model():
...
@@ -82,8 +82,8 @@ def test_model():
eq_
(
view
.
_filters
,
None
)
eq_
(
view
.
_filters
,
None
)
# Verify form
# Verify form
eq_
(
view
.
_create_form_class
.
test1
.
field_class
,
fields
.
Text
Field
)
eq_
(
view
.
_create_form_class
.
test1
.
field_class
,
fields
.
String
Field
)
eq_
(
view
.
_create_form_class
.
test2
.
field_class
,
fields
.
Text
Field
)
eq_
(
view
.
_create_form_class
.
test2
.
field_class
,
fields
.
String
Field
)
eq_
(
view
.
_create_form_class
.
test3
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test3
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test4
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test4
.
field_class
,
fields
.
TextAreaField
)
...
@@ -158,7 +158,7 @@ def test_extra_fields():
...
@@ -158,7 +158,7 @@ def test_extra_fields():
view
=
CustomModelView
(
view
=
CustomModelView
(
Model1
,
Model1
,
form_extra_fields
=
{
form_extra_fields
=
{
'extra_field'
:
fields
.
Text
Field
(
'Extra Field'
)
'extra_field'
:
fields
.
String
Field
(
'Extra Field'
)
}
}
)
)
admin
.
add_view
(
view
)
admin
.
add_view
(
view
)
...
...
flask_admin/tests/pymongo/test_basic.py
View file @
338d5110
...
@@ -8,8 +8,8 @@ from . import setup
...
@@ -8,8 +8,8 @@ from . import setup
class
TestForm
(
form
.
Form
):
class
TestForm
(
form
.
Form
):
test1
=
fields
.
Text
Field
(
'Test1'
)
test1
=
fields
.
String
Field
(
'Test1'
)
test2
=
fields
.
Text
Field
(
'Test2'
)
test2
=
fields
.
String
Field
(
'Test2'
)
class
TestView
(
ModelView
):
class
TestView
(
ModelView
):
...
...
flask_admin/tests/sqlamodel/test_basic.py
View file @
338d5110
...
@@ -91,8 +91,8 @@ def test_model():
...
@@ -91,8 +91,8 @@ def test_model():
eq_
(
view
.
_filters
,
None
)
eq_
(
view
.
_filters
,
None
)
# Verify form
# Verify form
eq_
(
view
.
_create_form_class
.
test1
.
field_class
,
fields
.
Text
Field
)
eq_
(
view
.
_create_form_class
.
test1
.
field_class
,
fields
.
String
Field
)
eq_
(
view
.
_create_form_class
.
test2
.
field_class
,
fields
.
Text
Field
)
eq_
(
view
.
_create_form_class
.
test2
.
field_class
,
fields
.
String
Field
)
eq_
(
view
.
_create_form_class
.
test3
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test3
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test4
.
field_class
,
fields
.
TextAreaField
)
eq_
(
view
.
_create_form_class
.
test4
.
field_class
,
fields
.
TextAreaField
)
...
@@ -567,7 +567,7 @@ def test_form_override():
...
@@ -567,7 +567,7 @@ def test_form_override():
admin
.
add_view
(
view1
)
admin
.
add_view
(
view1
)
admin
.
add_view
(
view2
)
admin
.
add_view
(
view2
)
eq_
(
view1
.
_create_form_class
.
test
.
field_class
,
fields
.
Text
Field
)
eq_
(
view1
.
_create_form_class
.
test
.
field_class
,
fields
.
String
Field
)
eq_
(
view2
.
_create_form_class
.
test
.
field_class
,
fields
.
FileField
)
eq_
(
view2
.
_create_form_class
.
test
.
field_class
,
fields
.
FileField
)
...
@@ -711,7 +711,7 @@ def test_extra_fields():
...
@@ -711,7 +711,7 @@ def test_extra_fields():
view
=
CustomModelView
(
view
=
CustomModelView
(
Model1
,
db
.
session
,
Model1
,
db
.
session
,
form_extra_fields
=
{
form_extra_fields
=
{
'extra_field'
:
fields
.
Text
Field
(
'Extra Field'
)
'extra_field'
:
fields
.
String
Field
(
'Extra Field'
)
}
}
)
)
admin
.
add_view
(
view
)
admin
.
add_view
(
view
)
...
@@ -738,7 +738,7 @@ def test_extra_field_order():
...
@@ -738,7 +738,7 @@ def test_extra_field_order():
Model1
,
db
.
session
,
Model1
,
db
.
session
,
form_columns
=
(
'extra_field'
,
'test1'
),
form_columns
=
(
'extra_field'
,
'test1'
),
form_extra_fields
=
{
form_extra_fields
=
{
'extra_field'
:
fields
.
Text
Field
(
'Extra Field'
)
'extra_field'
:
fields
.
String
Field
(
'Extra Field'
)
}
}
)
)
admin
.
add_view
(
view
)
admin
.
add_view
(
view
)
...
...
flask_admin/tests/sqlamodel/test_inlineform.py
View file @
338d5110
...
@@ -45,7 +45,7 @@ def test_inline_form():
...
@@ -45,7 +45,7 @@ def test_inline_form():
eq_
(
view
.
endpoint
,
'user'
)
eq_
(
view
.
endpoint
,
'user'
)
# Verify form
# Verify form
eq_
(
view
.
_create_form_class
.
name
.
field_class
,
fields
.
Text
Field
)
eq_
(
view
.
_create_form_class
.
name
.
field_class
,
fields
.
String
Field
)
eq_
(
view
.
_create_form_class
.
info
.
field_class
,
InlineModelFormList
)
eq_
(
view
.
_create_form_class
.
info
.
field_class
,
InlineModelFormList
)
rv
=
client
.
get
(
'/admin/user/'
)
rv
=
client
.
get
(
'/admin/user/'
)
...
...
flask_admin/tests/test_model.py
View file @
338d5110
...
@@ -21,9 +21,9 @@ class Model(object):
...
@@ -21,9 +21,9 @@ class Model(object):
class
Form
(
form
.
BaseForm
):
class
Form
(
form
.
BaseForm
):
col1
=
fields
.
Text
Field
()
col1
=
fields
.
String
Field
()
col2
=
fields
.
Text
Field
()
col2
=
fields
.
String
Field
()
col3
=
fields
.
Text
Field
()
col3
=
fields
.
String
Field
()
class
SimpleFilter
(
filters
.
BaseFilter
):
class
SimpleFilter
(
filters
.
BaseFilter
):
...
...
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