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
fc910bb9
Commit
fc910bb9
authored
Aug 23, 2013
by
Serge S. Koval
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #291 from lanybass/master
upload images problem
parents
5da50451
b1b898ce
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
5 deletions
+14
-5
upload.py
flask_admin/form/upload.py
+14
-5
No files found.
flask_admin/form/upload.py
View file @
fc910bb9
...
@@ -21,7 +21,6 @@ except ImportError:
...
@@ -21,7 +21,6 @@ except ImportError:
Image
=
None
Image
=
None
ImageOps
=
None
ImageOps
=
None
__all__
=
[
'FileUploadInput'
,
'FileUploadField'
,
__all__
=
[
'FileUploadInput'
,
'FileUploadField'
,
'ImageUploadInput'
,
'ImageUploadField'
,
'ImageUploadInput'
,
'ImageUploadField'
,
'namegen_filename'
,
'thumbgen_filename'
]
'namegen_filename'
,
'thumbgen_filename'
]
...
@@ -103,8 +102,6 @@ class ImageUploadInput(object):
...
@@ -103,8 +102,6 @@ class ImageUploadInput(object):
if
field
.
url_relative_path
:
if
field
.
url_relative_path
:
filename
=
urljoin
(
field
.
url_relative_path
,
filename
)
filename
=
urljoin
(
field
.
url_relative_path
,
filename
)
return
url_for
(
field
.
endpoint
,
filename
)
return
url_for
(
field
.
endpoint
,
filename
=
field
.
data
)
return
url_for
(
field
.
endpoint
,
filename
=
field
.
data
)
...
@@ -229,6 +226,9 @@ class FileUploadField(fields.TextField):
...
@@ -229,6 +226,9 @@ class FileUploadField(fields.TextField):
def
_save_file
(
self
,
data
,
filename
):
def
_save_file
(
self
,
data
,
filename
):
path
=
self
.
_get_path
(
filename
)
path
=
self
.
_get_path
(
filename
)
if
not
op
.
exists
(
op
.
dirname
(
path
)):
os
.
makedirs
(
os
.
path
.
dirname
(
path
),
0o666
)
data
.
save
(
path
)
data
.
save
(
path
)
return
filename
return
filename
...
@@ -328,6 +328,7 @@ class ImageUploadField(FileUploadField):
...
@@ -328,6 +328,7 @@ class ImageUploadField(FileUploadField):
self
.
thumbnail_size
=
thumbnail_size
self
.
thumbnail_size
=
thumbnail_size
self
.
endpoint
=
endpoint
self
.
endpoint
=
endpoint
self
.
image
=
None
self
.
image
=
None
self
.
url_relative_path
=
url_relative_path
if
not
allowed_extensions
:
if
not
allowed_extensions
:
allowed_extensions
=
(
'gif'
,
'jpg'
,
'jpeg'
,
'png'
,
'tiff'
)
allowed_extensions
=
(
'gif'
,
'jpg'
,
'jpeg'
,
'png'
,
'tiff'
)
...
@@ -362,6 +363,10 @@ class ImageUploadField(FileUploadField):
...
@@ -362,6 +363,10 @@ class ImageUploadField(FileUploadField):
# Saving
# Saving
def
_save_file
(
self
,
data
,
filename
):
def
_save_file
(
self
,
data
,
filename
):
path
=
self
.
_get_path
(
filename
)
if
not
op
.
exists
(
op
.
dirname
(
path
)):
os
.
makedirs
(
os
.
path
.
dirname
(
path
),
0o666
)
if
self
.
image
and
self
.
max_size
:
if
self
.
image
and
self
.
max_size
:
filename
,
format
=
self
.
_get_save_format
(
filename
,
self
.
image
)
filename
,
format
=
self
.
_get_save_format
(
filename
,
self
.
image
)
...
@@ -369,7 +374,8 @@ class ImageUploadField(FileUploadField):
...
@@ -369,7 +374,8 @@ class ImageUploadField(FileUploadField):
self
.
_get_path
(
filename
),
self
.
_get_path
(
filename
),
format
)
format
)
else
:
else
:
data
.
save
(
self
.
_get_path
(
filename
))
data
.
seek
(
0
)
data
.
save
(
path
)
self
.
_save_thumbnail
(
data
,
filename
)
self
.
_save_thumbnail
(
data
,
filename
)
...
@@ -389,11 +395,14 @@ class ImageUploadField(FileUploadField):
...
@@ -389,11 +395,14 @@ class ImageUploadField(FileUploadField):
if
force
:
if
force
:
return
ImageOps
.
fit
(
self
.
image
,
(
width
,
height
),
Image
.
ANTIALIAS
)
return
ImageOps
.
fit
(
self
.
image
,
(
width
,
height
),
Image
.
ANTIALIAS
)
else
:
else
:
return
self
.
image
.
copy
()
.
thumbnail
((
width
,
height
),
Image
.
ANTIALIAS
)
thumb
=
self
.
image
.
copy
()
thumb
.
thumbnail
((
width
,
height
),
Image
.
ANTIALIAS
)
return
thumb
return
image
return
image
def
_save_image
(
self
,
image
,
path
,
format
=
'JPEG'
):
def
_save_image
(
self
,
image
,
path
,
format
=
'JPEG'
):
image
=
image
.
convert
(
'RGB'
)
with
open
(
path
,
'wb'
)
as
fp
:
with
open
(
path
,
'wb'
)
as
fp
:
image
.
save
(
fp
,
format
)
image
.
save
(
fp
,
format
)
...
...
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