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
2ce8dbc0
Commit
2ce8dbc0
authored
Jan 20, 2017
by
Serge S. Koval
Committed by
GitHub
Jan 20, 2017
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #1415 from pawl/remove_speaklater
remove speaklater dependency
parents
dfb9d01f
e9be26ba
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
13 additions
and
30 deletions
+13
-30
view.py
flask_admin/contrib/sqla/view.py
+4
-8
test_translation.py
flask_admin/tests/sqla/test_translation.py
+9
-22
No files found.
flask_admin/contrib/sqla/view.py
View file @
2ce8dbc0
...
@@ -2,7 +2,6 @@ import logging
...
@@ -2,7 +2,6 @@ import logging
import
warnings
import
warnings
import
inspect
import
inspect
from
speaklater
import
is_lazy_string
,
make_lazy_string
from
sqlalchemy.orm.attributes
import
InstrumentedAttribute
from
sqlalchemy.orm.attributes
import
InstrumentedAttribute
from
sqlalchemy.orm
import
joinedload
,
aliased
from
sqlalchemy.orm
import
joinedload
,
aliased
from
sqlalchemy.sql.expression
import
desc
from
sqlalchemy.sql.expression
import
desc
...
@@ -652,14 +651,11 @@ class ModelView(BaseModelView):
...
@@ -652,14 +651,11 @@ class ModelView(BaseModelView):
if
not
isinstance
(
name
,
string_types
):
if
not
isinstance
(
name
,
string_types
):
visible_name
=
self
.
get_column_name
(
name
.
property
.
key
)
visible_name
=
self
.
get_column_name
(
name
.
property
.
key
)
else
:
else
:
column_name
=
self
.
get_column_name
(
name
)
if
self
.
column_labels
and
name
in
self
.
column_labels
:
visible_name
=
self
.
column_labels
[
name
]
def
prettify
():
return
column_name
.
replace
(
'.'
,
' / '
)
if
is_lazy_string
(
column_name
):
visible_name
=
make_lazy_string
(
prettify
)
else
:
else
:
visible_name
=
prettify
()
visible_name
=
self
.
get_column_name
(
name
)
visible_name
=
visible_name
.
replace
(
'.'
,
' / '
)
type_name
=
type
(
column
.
type
)
.
__name__
type_name
=
type
(
column
.
type
)
.
__name__
...
...
flask_admin/tests/sqla/test_translation.py
View file @
2ce8dbc0
import
json
from
flask_admin.babel
import
lazy_gettext
from
flask_babelex
import
Babel
from
nose.tools
import
eq_
,
ok_
,
raises
,
assert_true
from
nose.tools
import
eq_
,
ok_
from
speaklater
import
make_lazy_string
from
.
import
setup
from
.
import
setup
from
.test_basic
import
CustomModelView
,
create_models
from
.test_basic
import
CustomModelView
,
create_models
class
Translator
:
translate
=
False
def
__call__
(
self
,
string
):
if
self
.
translate
:
return
'Translated: "{0}"'
.
format
(
string
)
else
:
return
string
def
test_column_label_translation
():
def
test_column_label_translation
():
app
,
db
,
admin
=
setup
()
app
,
db
,
admin
=
setup
()
Model1
,
_
=
create_models
(
db
)
Model1
,
_
=
create_models
(
db
)
translated
=
Translator
()
app
.
config
[
'BABEL_DEFAULT_LOCALE'
]
=
'es'
label
=
make_lazy_string
(
translated
,
'Column1'
)
Babel
(
app
)
label
=
lazy_gettext
(
'Name'
)
view
=
CustomModelView
(
Model1
,
db
.
session
,
view
=
CustomModelView
(
Model1
,
db
.
session
,
column_list
=
[
'test1'
,
'test3'
],
column_list
=
[
'test1'
,
'test3'
],
...
@@ -31,12 +22,8 @@ def test_column_label_translation():
...
@@ -31,12 +22,8 @@ def test_column_label_translation():
column_filters
=
(
'test1'
,))
column_filters
=
(
'test1'
,))
admin
.
add_view
(
view
)
admin
.
add_view
(
view
)
translated
.
translate
=
True
non_lazy_groups
=
view
.
_get_filter_groups
()
json
.
dumps
(
non_lazy_groups
)
# Filter dict is JSON serializable.
ok_
(
translated
(
'Column1'
)
in
non_lazy_groups
)
# Label was translated.
client
=
app
.
test_client
()
client
=
app
.
test_client
()
# Render index with active filter.
rv
=
client
.
get
(
'/admin/model1/?flt1_0=test'
)
rv
=
client
.
get
(
'/admin/model1/?flt1_0=test'
)
eq_
(
rv
.
status_code
,
200
)
eq_
(
rv
.
status_code
,
200
)
ok_
(
'{"Nombre":'
in
rv
.
data
.
decode
(
'utf-8'
))
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