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
1a40daec
Commit
1a40daec
authored
Dec 11, 2014
by
Paul Brown
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add fix for issue #734, allow saving blank times
parent
50de6ff0
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
23 additions
and
13 deletions
+23
-13
fields.py
flask_admin/form/fields.py
+17
-12
test_basic.py
flask_admin/tests/sqla/test_basic.py
+6
-1
No files found.
flask_admin/form/fields.py
View file @
1a40daec
...
@@ -69,24 +69,29 @@ class TimeField(fields.Field):
...
@@ -69,24 +69,29 @@ class TimeField(fields.Field):
def
_value
(
self
):
def
_value
(
self
):
if
self
.
raw_data
:
if
self
.
raw_data
:
return
u' '
.
join
(
self
.
raw_data
)
return
u' '
.
join
(
self
.
raw_data
)
elif
self
.
data
is
not
None
:
return
self
.
data
.
strftime
(
self
.
default_format
)
else
:
else
:
return
self
.
data
and
self
.
data
.
strftime
(
self
.
default_format
)
or
u''
return
u''
def
process_formdata
(
self
,
valuelist
):
def
process_formdata
(
self
,
valuelist
):
if
valuelist
:
if
valuelist
:
date_str
=
u' '
.
join
(
valuelist
)
date_str
=
u' '
.
join
(
valuelist
)
for
format
in
self
.
formats
:
if
date_str
.
strip
():
try
:
for
format
in
self
.
formats
:
timetuple
=
time
.
strptime
(
date_str
,
format
)
try
:
self
.
data
=
datetime
.
time
(
timetuple
.
tm_hour
,
timetuple
=
time
.
strptime
(
date_str
,
format
)
timetuple
.
tm_min
,
self
.
data
=
datetime
.
time
(
timetuple
.
tm_hour
,
timetuple
.
tm_sec
)
timetuple
.
tm_min
,
return
timetuple
.
tm_sec
)
except
ValueError
:
return
pass
except
ValueError
:
pass
raise
ValueError
(
gettext
(
'Invalid time format'
))
raise
ValueError
(
gettext
(
'Invalid time format'
))
else
:
self
.
data
=
None
class
Select2Field
(
fields
.
SelectField
):
class
Select2Field
(
fields
.
SelectField
):
...
...
flask_admin/tests/sqla/test_basic.py
View file @
1a40daec
...
@@ -121,7 +121,9 @@ def test_model():
...
@@ -121,7 +121,9 @@ def test_model():
eq_
(
rv
.
status_code
,
200
)
eq_
(
rv
.
status_code
,
200
)
rv
=
client
.
post
(
'/admin/model1/new/'
,
rv
=
client
.
post
(
'/admin/model1/new/'
,
data
=
dict
(
test1
=
'test1large'
,
test2
=
'test2'
))
data
=
dict
(
test1
=
'test1large'
,
test2
=
'test2'
,
time_field
=
time
(
0
,
0
,
0
)))
eq_
(
rv
.
status_code
,
302
)
eq_
(
rv
.
status_code
,
302
)
model
=
db
.
session
.
query
(
Model1
)
.
first
()
model
=
db
.
session
.
query
(
Model1
)
.
first
()
...
@@ -137,6 +139,9 @@ def test_model():
...
@@ -137,6 +139,9 @@ def test_model():
url
=
'/admin/model1/edit/?id=
%
s'
%
model
.
id
url
=
'/admin/model1/edit/?id=
%
s'
%
model
.
id
rv
=
client
.
get
(
url
)
rv
=
client
.
get
(
url
)
eq_
(
rv
.
status_code
,
200
)
eq_
(
rv
.
status_code
,
200
)
# verify that midnight does not show as blank
ok_
(
u'00:00:00'
in
rv
.
data
.
decode
(
'utf-8'
))
rv
=
client
.
post
(
url
,
rv
=
client
.
post
(
url
,
data
=
dict
(
test1
=
'test1small'
,
test2
=
'test2large'
))
data
=
dict
(
test1
=
'test1small'
,
test2
=
'test2large'
))
...
...
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