Sorl-thumbnail: sorl.thumbnail.ImageField AdminImageMixin рдХреЗ рд╕рд╛рде рдердВрдмрдиреЗрд▓ рдирд╣реАрдВ рджрд┐рдЦрд╛ рд░рд╣рд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 20 рдЬреБрд▓ре░ 2015  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: jazzband/sorl-thumbnail

рд╕реЙрд░рд▓-рдердВрдмрдиреЗрд▓==12.3
Django == 1.8.3
рддрдХрд┐рдпрд╛==2.9.0

from sorl.thumbnail import ImageField as SorlImage
class Person(PublishedMixin):
    photo = SorlImage(upload_to='photos', blank=True, null=True)
...
from sorl.thumbnail.admin import AdminImageMixin as SorlImageAdmin
from reversion import VersionAdmin

class Admin(VersionAdmin):
    exclude = []

    class Media:
        css = {
            'all': ('css/admin_forms.css',)
        }

@register(Person)
class PersonAdmin(Admin, SorlImageAdmin):
...

рдореБрдЭреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдлреЙрд░реНрдо рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдлреЙрд░реНрдо рдореЗрдВ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ, рдХрдВрд╕реЛрд▓ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВред рдЧреНрд░реЗрдкреЗрд▓реА рдХреЗ рд╕рд╛рде рдФрд░ рдЙрд╕рдХреЗ рдмрд┐рдирд╛ рджреЛрдиреЛрдВ рд╕рдХреНрд░рд┐рдпред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдирд╡реАрдирддрдо sorl.рдердВрдмрдиреЗрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ

pip install --pre --upgrade sorl-thumbnail

рдЗрд╕рдореЗрдВ рдкрд▓рд╛рдпрди рд╣реИ

рд╕рднреА 6 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдореВрд▓ рдХрд╛рд░рдг рдпрд╣ рдерд╛ рдХрд┐ рд╕реЙрд░рд▓ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рдерд╛ред рдореИрдВ рддрдХрд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдЕрдЬрдЧрд░ 3.5, django 1.9 рдФрд░ sorl 13.2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рдерд╛ рдХрд┐ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреНрдпреЛрдВ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдЗрд╕реЗ django 1.9 рдпрд╛ AppConfig рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╣реЛрдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИ ...

рдиреАрдЪреЗ рдмрджрд╕реВрд░рдд рдЕрд╕реНрдерд╛рдпреА рд╕реБрдзрд╛рд░ ...

$ python manage.py migrate thumbnail
CommandError: App 'thumbnail' does not have migrations.
$ python manage.py makemigrations thumbnail
Migrations for 'thumbnail':
  0001_initial.py:
    - Create model KVStore
$ python manage.py migrate
Operations to perform:
  Apply all migrations: <...>
Running migrations:
  Rendering model states... DONE
  Applying thumbnail.0001_initial... OK

рдЯрдХреНрдХрд░...

рдирд╡реАрдирддрдо sorl.рдердВрдмрдиреЗрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ

pip install --pre --upgrade sorl-thumbnail

рдЗрд╕рдореЗрдВ рдкрд▓рд╛рдпрди рд╣реИ

рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо рдХрд┐рдпрд╛, рдзрдиреНрдпрд╡рд╛рджред

рдпрд╣ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ! рдзрдиреНрдпрд╡рд╛рджред

рдЗрд╕ рдЯреНрд░рд┐рдХ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

nuschk picture nuschk  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

philgyford picture philgyford  ┬╖  16рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

DarwinSurvivor picture DarwinSurvivor  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

lcmartinezdev picture lcmartinezdev  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

kevin-brown picture kevin-brown  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ