【发布时间】:2010-12-15 15:53:16
【问题描述】:
你好 - 我编写了一个非常简单的应用程序来接受包括简历上传在内的工作申请。
在本地运行捆绑的服务器进行开发,我可以通过前端的Web表单和管理界面成功上传文件。在远程服务器上运行它(带有 mod_python 的 Apache)我可以通过管理界面成功上传文件,但尝试通过 Web 前端没有上传文件。
我已将FILE_UPLOAD_PERMISSIONS = 0644 添加到设置中,检查了两个设置文件,并查找了其他地方描述的类似问题。图我要么忘记了设置,要么需要以不同的方式解决这个问题。有什么建议吗?
供参考,包含代码。
型号:
class Application(models.Model):
job = models.ForeignKey('JobOpening')
name = models.CharField(max_length=100)
email = models.EmailField()
date_applied = models.DateField()
cover_letter = models.TextField()
resume = models.FileField(upload_to='job_applications', blank=True)
def __str__(self):
return self.name
def save(self):
if not self.date_applied:
self.date_applied = datetime.today
super(Application, self).save()
形式:
class JobApplicationForm(ModelForm):
class Meta:
model = Application
def save(self, commit=True, fail_silently=False):
super(JobApplicationForm, self).save(commit)
观点:
def job_application(request):
ajax = request.GET.has_key('ajax')
if request.method == 'POST':
form = JobApplicationForm(request.POST, request.FILES)
if form.is_valid():
new_application = form.save()
return HttpResponseRedirect('/about/employment/apply/sent/')
elif request.GET.has_key('job'):
job = request.GET['job']
form = JobApplicationForm({'job': job})
else:
return HttpResponseRedirect('/about/')
t = loader.get_template('employment/job_application.html')
c = Context({
'form': form,
})
return HttpResponse(t.render(c))
【问题讨论】:
标签: django file-upload django-forms