2014-12-04 69 views
0

我下載django-wysiwyg-redactor不會上傳圖像(Django的所見即所得主編)

並遵循有關如何使用它的說明。 但是,當我選擇圖片上傳它不上傳。沒有錯誤。 它有什麼問題?

這裏是我的文章型號: 從django.db進口車型 從redactor.fields導入RedactorField

這裏創建您的模型。

class Article(models.Model): 
    class Meta(): 
     db_table = 'article' 

    article_title = models.CharField(max_length=200) 
    article_text = RedactorField(
     verbose_name=u'Text', 
     redactor_options={'lang': 'en', 'focus': 'true'}, 
     upload_to='tmp/', 
     allow_file_upload=True, 
     allow_image_upload=True 
    ) 
    article_date = models.DateTimeField() 
    article_likes = models.IntegerField(default=0) 

admin.py

from django.contrib import admin 
from redactor.widgets import RedactorEditor 
from article.models import Article 
from django import forms 

class EntryAdminForm(forms.ModelForm): 
    class Meta: 
     model = Article 
     widgets = { 
      'article_text': RedactorEditor(), 
     } 

class EntryAdmin(admin.ModelAdmin): 
    form = EntryAdminForm 
    fields = ['article_title', 'article_text', 'article_date'] 

admin.site.register(Article, EntryAdmin) 

最後的代碼行:admin.site.register(Article, EntryAdmin)被一點點改變,因爲說明書上說,它必須是admin.site.register(EntryAdminForm, EntryAdmin),但在部份情況下,有一個錯誤:'ModelFormMetaclass' object is not iterable

回答

0

不要在EntryAdminForm上指定小部件。 RedactorField將使用正確的配置生成小部件。

class EntryAdminForm(forms.ModelForm): 
    class Meta: 
     model = Article 
+0

需要什麼類EntryAdminForm,如果我不使用它呢?因爲當我編寫admin.site.register(EntryAdminForm,EntryAdmin)時會導致錯誤。 – Andrew 2014-12-04 20:58:18

+0

沒有用像你發佈的代碼:'admin.site.register(Article,EntryAdmin)'。正如我看到的,你可以刪除'EntryAdminForm',因爲它與Django自動生成的相同 – Mounir 2014-12-04 21:14:55

+0

爲什麼圖像不能上傳呢?我選擇了圖像,但是它載入太久而沒有結果。也許我寫錯誤的路徑來保存圖像? – Andrew 2014-12-04 22:07:01

0

這是我如何得到它在我的模型工作

models.py

from redactor.fields import RedactorField 

text = RedactorField(verbose_name=u'Text') 

settings.py

INSTALLED_APPS = (
'redactor', 
'django.contrib.admin', 
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.messages', 
'django.contrib.staticfiles', 
'blog', 
) 

REDACTOR_OPTIONS = {'lang': 'en'} 
REDACTOR_UPLOAD = 'static/' 

urls.py

url(r'^redactor/', include('redactor.urls')), 

admin.py

from django import forms 
from redactor.widgets import RedactorEditor 

class EntryAdminForm(forms.ModelForm): 
class Meta: 
    model = Post 
    widgets = { 
     'text': RedactorEditor(), 
    } 
    fields = '__all__' 

class EntryAdmin(admin.ModelAdmin): 
    form = EntryAdminForm