2015-05-15 25 views
4

我在我的django項目中使用django-image-cropping,我遵循官方指引,但仍然沒有得到期望的結果。 這裏是我的項目文件的片段。django-image-cropping不能在管理界面工作

我已將easy_thumbnailsimage_cropping添加到我的INSTALLED_APPS

settings.py

from easy_thumbnails.conf import Settings as thumbnail_settings 
THUMBNAIL_PROCESSORS = (
    'image_cropping.thumbnail_processors.crop_corners', 
) + thumbnail_settings.THUMBNAIL_PROCESSORS 

models.py

from django.db import models 
from image_cropping import ImageRatioField  
class UserData(models.Model): 
     fullname = models.CharField(max_length=255) 
     user = models.CharField(max_length=70, unique=True, blank=False, null=False) 
     image = models.ImageField(upload_to=generate_filename,blank=False, null=False) 
     cropping = ImageRatioField('image', '180x180') 

admin.py

from django.contrib import admin 
from image_cropping import ImageCroppingMixin 
class UserDataModelAdmin(ImageCroppingMixin, admin.ModelAdmin): 
    # filter_horizontal=['image'] 
    pass 

admin.site.register(UserData, UserDataModelAdmin) 

作爲每正式開通了l準則足以在管理面板中看到增強的選擇區域,但我沒有得到它。相反,我得到這個。 enter image description here

無法進行裁剪。

請幫我解決這個問題。

+0

你可以解決這個問題嗎?謝謝...... – lgapontes

+0

沒有用於裁剪'ImageRatioField'的字段?導致3看起來是正確的。你裁剪的那個將是裁剪財產的領域 – dietbacon

回答

0

使用此工具django-imagekit-cropper,它具有很好的功能和非常好的文檔。你需要創建一個form.py文件,並需要一提的這個

from django import forms 
    from imagekit_cropper.widgets import ImageCropWidget  
    from .models import UserData 


    class ImageAdminForm(forms.ModelForm): 
     square_150_crop = forms.CharField(widget=ImageCropWidget(properties=Image.square_150_crop_properties, help_text=Image.help['square_150_crop'])) 

     class Meta: 
      model = UserData 
0

雖然這不是蓋的文檔中,我發現我需要從我的模型添加cropping屬性來我的自定義字段集UserAdmin

fieldsets = (
    (None, {'fields': ('email', 'password')}), 
    ('Personal info', {'fields': ('first_name', 'last_name', 'gender', 
     'phone', 'address', 'postal_code', 'city', 'student', 'university', 
     'newsletter', 'birthday', 'avatar', 'cropping')}), 

凡我image屬性或者名稱avatar