try 使用非常简单的表单将文件上载到新的类实例中.我希望这两个文件都是request.FILES号的,但它是空的.我在Bundle 的开发服务器上.

我被困在这里,问了所有相关的问题.

wayfinder_map.media_file = request.FILES['media_file'] 

生成

MultiValueDictKeyError: "Key 'media_file' not found in MultiValueDict: {}>"

model

class WayfinderMap(models.Model):
    """ Way-finding Map Config"""


    media_file = models.FileField(upload_to="maps", null=True, blank=True) 
    wall_file = models.FileField(upload_to="maps_data", null=True, blank=True) 

view

@login_required
def create_map(request, form_class=WayfinderMapForm, template_name="wayfinder/map/create.html"):
wayfinder_map_form = form_class(request.user, request.POST or None, request.FILES)

    if wayfinder_map_form.is_valid():
        wayfinder_map = wayfinder_map_form.save(commit=False)
        wayfinder_map.media_file = request.FILES['media_file']
        wayfinder_map.data_file = request.FILES['data_file']
        wayfinder_map.creator = request.user
        wayfinder_map.save()
    return HttpResponseRedirect(wayfinder_map.get_absolute_url())

return render_to_response(template_name, {
    "wayfinder_map_form": wayfinder_map_form,
}, context_instance=RequestContext(request))

template

<form enctype="multipart/form-data" class="uniForm" id="wayfinder_map_form" method="POST" action="">
        <fieldset class="inlineLabels">
            {{ wayfinder_map_form|as_uni_form }}
            <div class="form_block">
                <input type="hidden" name="action" value="create" />
                <input type="submit" value="{% trans 'create' %}"/>
            </div>
        </fieldset>
    </form>

推荐答案

这似乎是要求的.在这种情况下不需要FILES(幸好它是空的…)

我修改了这行

wayfinder_map.media_file = request.FILES['media_file'] 

wayfinder_map.media_file = wayfinder_map_为m.cleaned_data['media_file'] 

而且很管用.不过,我不确定做事情的正确方式是什么.-

Django相关问答推荐

Django BooleanField如何使用RadioSelect?

如何在管理页面创建实例时只在ManyToManyField字段中显示超级用户

注册新用户时,对象没有属性';is_active';错误:';NoneType';对象没有属性

无法迁移,模型中的外键导致了问题

无法使用 django-filters 进行过滤

Django:使用相同的外键在不同的应用程序中 Select 多个列

如何使用 matplotlib 在绘图的角落插入小图像?

Django:如何从模板调用视图函数?

如何按名称设置 django 模型字段?

Django:使用 ModelForm 编辑现有数据库条目

超过 1 个外键

Python:获取异常的错误消息

Django - 来自 QuerySet 的唯一列表

django post_save 更新信号

如何测试 Django QuerySets 是否相等?

django 应用基于条件的样式类

您如何在本地针对 OpenID 进行开发

Django模板过滤器(filters)、标签(tags)、simple_tags和inclusion_tags

在 Django 中使用 select_related Select 特定字段

如何在 django 模板中呈现有序字典?