了Excel,如同與3列的左畫面時,手動附加信息。
在插入數據庫時,我需要手動添加2列如右圖所示,最後在數據庫中共插入5列。這2個額外的列信息是從其他數據庫獲取的。
而另一功能是,如果有已經存在的文件,新上傳的文件將覆蓋現有的一個。
我已經嘗試了兩種3方的工具,但沒有作品[以下views.py片段],所以也許它只是使用嵌入在Django中的那個更好。
版本:Python 2.7。 Excel 2013. Django1.8。
任何幫助,高度讚賞。希望可以爲如何將這些2列追加細節片段:
uploader = request.session['uploader']
Date=request.session['date']
forms.py
from django.core.files.storage import FileSystemStorage
from financialdata.storage import OverwriteStorage
class XXXXDataForm(forms.Form):
XXXXfile=forms.FileField(label='Select a file')
views.py
from django.core.files.storage import FileSystemStorage
def import_data(request):
if request.method == "POST":
form = XXXXForm(request.POST,request.FILES)
if form.is_valid():
newdoc= XXXX(docfile=request.FILES['docfile'])
newdoc.save()
return HttpResponseRedirect(reverse('homepage'))
else:
return HttpResponseBadRequest()
else:
form = XXXXForm()
return render_to_response(
'dataentry.html',
{
'form': form,
'title': 'Import excel data into database example',
'header': 'Please upload XXXX.xlsx:',
'message': 'File Saved!'
},
context_instance=RequestContext(request))
<!--How can I embed the following part to previous part?-->
class OverwriteStorage(FileSystemStorage):
def _save(self, name, content):
if self.exists(name):
self.delete(name)
return super(OverwriteStorage, self)._save(name, content)
def get_available_name(self, name):
return name
你不打電話給你刪除功能 – maazza
@maazza,你能不能請在下方粘貼您的更正後的代碼?謝謝。 –
正如@maazza所說,你創建了你的函數,但你並沒有調用它。在代碼中的某處,您應該調用它以便運行.. – qasimalbaqali