Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 20, 2009 21:41:50

dissdoc
От:
Зарегистрирован: 2009-12-12
Сообщения: 273
Репутация: +  0  -
Профиль   Отправить e-mail  

PIL на Windows

Всем добрый вечер.
Ребят, возник вопрос. Как поставить PIL в проект? Т.е. я установил PIL но никак не найду в документации как теперь эту библиотеку устанавливать в свой проект?
Раньше на Ubuntu ставил через pip =( А сейчас как быть?



Офлайн

#2 Дек. 20, 2009 22:22:09

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

PIL на Windows

dissdoc
как теперь эту библиотеку устанавливать в свой проект?
Что значит “установить в проект”?

Если библиотека установлена в системе, то вы можете её использовать в любом проекте.



Офлайн

#3 Май 24, 2012 20:57:34

S
Зарегистрирован: 2012-04-25
Сообщения: 62
Репутация: +  0  -
Профиль   Отправить e-mail  

PIL на Windows

А если джанга ругается:

The _imaging C module is not installed
, как быть? Выдаётся при попытке аплода файла. Если делать через дев-сервер, то такой проблемы нет.
В mod.wsgi прописал
sys.path.append('C:/Python27/Lib/site-packages/')
, но ничего не изменилось, да и вообще, судя по странице ошибок всё что нужно в путях есть, в том числе и сам PIL:
Python Path: 	
['C:\\Windows\\system32\\python27.zip',
 'C:\\Python27\\Lib',
 'C:\\Python27\\DLLs',
 'C:\\Python27\\Lib\\lib-tk',
 'C:\\Program Files (x86)\\Apache Software Foundation\\Apache2.2',
 'C:\\Program Files (x86)\\Apache Software Foundation\\Apache2.2\\bin',
 'C:\\Python27',
 'C:\\Python27\\lib\\site-packages',
 'C:\\Python27\\lib\\site-packages\\PIL',
 'C:/Program Files (x86)/Apache Software Foundation/Apache2.2/modules',
 'C:/Python27/Lib/site-packages/',
 'C:/django/mysite']

Офлайн

#4 Май 24, 2012 21:22:54

S
Зарегистрирован: 2012-04-25
Сообщения: 62
Репутация: +  0  -
Профиль   Отправить e-mail  

PIL на Windows

Пора вводить эмпирическое правило - пока на форуме не спросишь, на стэковерфлоу ничего не найдётся.
Решение: http://stackoverflow.com/questions/4011705/python-the-imagingft-c-module-is-not-installed/4011715#4011715

Офлайн

#5 Май 24, 2012 22:12:04

S
Зарегистрирован: 2012-04-25
Сообщения: 62
Репутация: +  0  -
Профиль   Отправить e-mail  

PIL на Windows

Далее - эта ошибка пропала, файлы загружаются, но в папке не появляются.
В конфиге апача прописано: Alias /media/ Cdjango/mysite/media/
в settings.ry есть:
MEDIA_ROOT = ‘/media/’
MEDIA_URL = ‘/media/’

Пытаюсь делать по книге форсье и биссекса, код models.py:

from django.db import models
from django.contrib import admin
# Create your models here.
from django.db.models import permalink
class Item(models.Model):
    name = models.CharField(max_length=250)
    description = models.TextField()
    class Meta:
        ordering = ['name']
    def __unicode__(self):
        return self.name
    @permalink
    def get_absolute_url(self):
        return ('item_detail', None, {'object_id': self.id})
class Photo(models.Model):
    item = models.ForeignKey(Item)
    title = models.CharField(max_length=100)
    image = models.ImageField(upload_to='media')
    caption = models.CharField(max_length=100, blank=True)
    class Meta:
        ordering = ['title']
    def __unicode__(self):
        return self.title
    @permalink
    def get_absolute_url(self):
        return ('photo_detail', None, {'object_id': self.id})
class PhotoInline(admin.StackedInline):
    model = Photo
class ItemAdmin(admin.ModelAdmin):
    inlines = [PhotoInline]
class TestModel(models.Model):
    message = 'hello!'
admin.site.register(Item, ItemAdmin)
admin.site.register(Photo)

Как такие косяки правильно отлавливаются?

Офлайн

#6 Май 25, 2012 09:13:29

S
Зарегистрирован: 2012-04-25
Сообщения: 62
Репутация: +  0  -
Профиль   Отправить e-mail  

PIL на Windows

Вот та же ерунда была у человека: http://python.su/forum/topic/9008/

Офлайн

#7 Май 25, 2012 21:12:20

S
Зарегистрирован: 2012-04-25
Сообщения: 62
Репутация: +  0  -
Профиль   Отправить e-mail  

PIL на Windows

Оказывается в MEDIA_ROOT нужно было прописать полный путь.
Вариант когда в settings.py написано

MEDIA_ROOT = /media/
, и в директиве виртуально хоста есть строка
Alias /media/ C:/django/mysite/media/
не работает. Нужно прям писать
MEDIA_ROOT = C:/django/mysite/media/
, тогда работает.
Хотя
STATIC_ROOT = '/static/'
с
Alias /static/ C:/django/mysite/static/
работает нормально, статика отображается корректно.
Почему такая разница?

Отредактировано S (Май 25, 2012 21:13:21)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version