获取此表单的呈现错误:
"NoneType"对象没有属性"插件" http://dpaste.com/88585/
有任何想法吗?
def your_photos_upload(request):
if request.method == 'POST':
form = MemorialUserPhotosForm(request.FILES)
if form.is_valid():
Run Code Online (Sandbox Code Playgroud)
class MemorialUserPhotosForm(ModelForm):
image = forms.ImageField(label="Select an image to upload.", error_messages={'missing' : 'No image selected', 'invalid' : 'Please select an image', 'invalid_image' : 'Not a valid image file'})
class Meta:
model=MemorialUserPhotos
fields=('image')
Run Code Online (Sandbox Code Playgroud)
<form enctype="multipart/form-data" method="post" action="{{ processor }}">
<li><label for="id_image">Select an image to upload.</label> <input type="file" id="id_image" name="image"/></li>
<input type="hidden" name="sessionid" value="7e4b4626c6ae1021ba0bae7969bfdd14">
<input type="submit">
</form>
Run Code Online (Sandbox Code Playgroud)
class MemorialUserPhotos(Photo):
user = models.ForeignKey(User)
modified = models.DateTimeField(auto_now=True)
class Meta:
db_table = u'memorial_user_photos'
verbose_name = 'User Uploaded Photo'
verbose_name_plural = 'User Uploaded Photo'
ordering = ['user']
get_latest_by = 'modified'
def save(self):
self.is_public = False
if self.title is None:
self.image.name
if self.title_slug is None:
self.title_slug = slugify(self.title)
super(MemorialUserPhotos, self).save()
gallery = Gallery.objects.get(id=settings.USER_GALLERY)
gallery.photos.add(self)
class Photo(ImageModel):
title = models.CharField(_('title'), max_length=100, unique=True)
title_slug = models.SlugField(_('slug'), unique=True,
help_text=('A "slug" is a unique URL-friendly title for an object.'))
caption = models.TextField(_('caption'), blank=True)
date_added = models.DateTimeField(_('date added'), default=datetime.now, editable=False)
is_public = models.BooleanField(_('is public'), default=True, help_text=_('Public photographs will be displayed in the default views.'))
tags = TagField(help_text=tagfield_help_text, verbose_name=_('tags'))
class ImageModel(models.Model):
image = models.ImageField(_('image'), max_length=IMAGE_FIELD_MAX_LENGTH,
upload_to=get_storage_path)
date_taken = models.DateTimeField(_('date taken'), null=True, blank=True, editable=False)
view_count = models.PositiveIntegerField(default=0, editable=False)
crop_from = models.CharField(_('crop from'), blank=True, max_length=10, default='center', choices=CROP_ANCHOR_CHOICES)
effect = models.ForeignKey('PhotoEffect', null=True, blank=True, related_name="%(class)s_related", verbose_name=_('effect'))
Run Code Online (Sandbox Code Playgroud)
不,这是一个经典的python陷阱:
fields=('image')
Run Code Online (Sandbox Code Playgroud)
'image' 不是一个元组,它只是一个带括号的字符串.猜猜会发生什么,框架会尝试迭代你的字符串而不是迭代元组('i','m','a','g','e').
只有一个元素的有效元组用另外一个逗号写入:
fields=('image',)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1325 次 |
最近记录: |